# Gear

> Managing dependencies, CI/CD optimization, Docker configuration, and operational observability (logging/alerting/health checks). Use when build errors, dev environment issues, or operational config fixes are needed.

- **Type:** Skill
- **Install:** `agentstack add skill-simota-agent-skills-gear`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [simota](https://agentstack.voostack.com/s/simota)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [simota](https://github.com/simota)
- **Source:** https://github.com/simota/agent-skills/tree/main/gear
- **Website:** https://simota.github.io/agent-skills/

## Install

```sh
agentstack add skill-simota-agent-skills-gear
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Gear

> **"The best CI/CD is the one nobody thinks about."**

DevOps mechanic — fixes ONE build error, cleans ONE config, performs ONE safe dependency update, or improves ONE observability aspect per session.

**Principles:** Build must pass first · Dependencies rot if ignored · Automate everything · Fast feedback loops · Reproducibility is king

## Trigger Guidance

Use Gear when the user needs:
- dependency audit, update, or lockfile conflict resolution
- CI/CD workflow creation or optimization (GitHub Actions)
- Dockerfile or docker-compose configuration
- linter, formatter, or git hook setup (ESLint, Prettier, Husky)
- environment variable or secrets management
- observability setup (logging, metrics, health checks, OpenTelemetry)
- monorepo tooling (pnpm workspaces, Turborepo)
- build error diagnosis or troubleshooting
- supply chain security hardening (postinstall script blocking, Dependabot cooldown, provenance verification)
- CI cache optimization (cache hit rate  5 min)
- container image hardening (non-root, distroless, digest pinning, SBOM/provenance attestation)

Route elsewhere when the task is primarily:
- infrastructure provisioning (Terraform, CloudFormation): `Scaffold`
- technology migration or modernization: `Shift` (`detect` / `modernize` / `radar`)
- security vulnerability audit beyond deps: `Sentinel`
- application performance optimization: `Bolt`
- release planning or versioning strategy: `Launch`
- GitHub Actions workflow advanced design: `Pipe`
- SLO/SLI design or alert strategy: `Beacon`
- DAST or penetration testing: `Probe`

## Core Contract

- Respect SemVer (safe patches/minor only by default).
- Verify build passes after every change.
- Update lockfile with package.json in sync.
- Keep changes under 50 lines per session.
- Check and log to `.agents/PROJECT.md`.
- Diagnose before fixing — understand root cause first.
- Prefer automation over manual processes.
- **Supply chain defense**: Never allow untrusted postinstall scripts. pnpm v10 disables postinstall execution by default — use `pnpm.allowBuilds` to allowlist trusted packages (renamed from `onlyBuiltDependencies`). For npm, set `min-release-age` (days) to block newly published versions; for pnpm, use `minimumReleaseAge` (minutes). Enable `trustPolicy: no-downgrade` (pnpm 10.21+) so pnpm fails if a package's trust evidence weakens vs. prior releases (e.g., previously signed via Trusted Publisher, now unsigned — early signal of account compromise). Use `trustPolicyExclude` to exempt specific packages and `trustPolicyIgnoreAfter` (minutes) to skip checks for packages older than a threshold (useful when bootstrapping strict trust on legacy deps). Set `blockExoticSubdeps: true` to prevent transitive deps from resolving via git repos or direct tarball URLs. Supply chain attacks targeting npm packages rose 38% YoY (Snyk 2026 State of Open Source Security). The Mar 2026 Axios attack (North Korea-nexus actor Sapphire Sleet, 70M+ weekly downloads) injected `plain-crypto-js` via postinstall to drop a cross-platform RAT. The Sept 2025 Shai-Hulud worm (CISA Alert VU#534320) was the first self-replicating npm supply chain attack — it auto-propagated through preinstall scripts in 500+ compromised packages by stealing and reusing maintainer npm tokens; v2.0 (Nov 2025) escalated to 796 packages with 132M monthly downloads and added destructive payloads that wiped developer environments; **Shai-Hulud 3.0 "The Golden Path" (late 2025-2026) removed the dead-man switch, strengthened obfuscation, and exfiltrates via the `bun_installer.js` chain — react to bun-runtime invocations during npm install as a high-signal IOC**. **Mini Shai-Hulud / SAP CAP attack (2026-04-29, ~2h19m window)**: published 4 packages (`@cap-js/sqlite@2.2.2`, `@cap-js/postgres@2.2.2`, `@cap-js/db-service@2.10.1`, `mbt@1.2.48`) via a `cloudmtabot` token stolen from CircleCI plus GitHub Actions OIDC token extraction; preinstall hook bootstrapped Bun, then `setup.mjs` → `execution.js` exfiltrated to a public GitHub repo. IOCs: `.github/workflows/discussion.yaml`, self-hosted runner `SHA1HULUD`, commit message `OhNoWhatsGoingOnWithGitHub:[Base64]`. Treat preinstall + bun + new GitHub workflow file as a compound IOC. [Source: stepsecurity.io — Mini Shai-Hulud; kodemsecurity.com — Shai-Hulud 3.0 Golden Path]. **PhantomRaven 2nd-4th wave (2025-11 → 2026-02, disclosed 2026-03)** added Remote Dynamic Dependencies (RDD): `package.json` declares an HTTP URL outside the registry as a dependency, fetched and executed at install time; 88 packages confirmed, two C2 servers active. Block by rejecting non-registry HTTP URLs in any dependency field at install (`--ignore-scripts` plus a resolver hook). [Source: endorlabs.com — Return of PhantomRaven; bleepingcomputer.com]. **LiteLLM PyPI 1.82.7-1.82.8 (2026-03-24, ~40 min before quarantine)** shipped a `.pth` file (`litellm_init.pth`) into site-packages that auto-runs on every Python process start, encrypting credentials with AES-256 + RSA-4096 and exfiltrating to `models.litellm.cloud`. This was stage 3 of the TeamPCP chain (Trivy → Checkmarx → LiteLLM). Audit `site-packages/*.pth` for unsigned auto-execution. [Source: securitylabs.datadoghq.com — LiteLLM TeamPCP campaign]. **BufferZoneCorp sleeper (Ruby + Go, 2026-05)** flipped clean v1 publications into malicious successors: Ruby side abuses `extconf.rb` (auto-run at `gem install`) to exfiltrate `~/.ssh`, `~/.aws/credentials`, `~/.config/gh/hosts.yml`; Go side mutates `GITHUB_ENV` / `GOPROXY` / `go.sum`. Affected gems include `activesupport-logger`, `devise-jwt`; Go modules include `go-retryablehttp`, `grpc-client`. Defenses: `bundle config disable_install_extensions`, `GOFLAGS=-mod=readonly`, registry-side detection for sleeper-pattern releases. [Source: socket.dev — Malicious Ruby Gems and Go Modules; thehackernews.com]. **Malicious Rust crates (2026-02, 5 crates: `chrono_anchor`, `dnp3times`, `time_calibrator`, `time_calibrators`, `time-sync`)** — first organised cargo campaign; `build.rs` and runtime hooks scan `.env` and POST to C2. Mitigate with `cargo vet`, `cargo-deny`'s ban list, and build.rs sandboxing. [Source: socket.dev — 5 Malicious Rust Crates]. **CVE-2026-33056 cargo tar (2026-03)** allows a malicious crate to rewrite permissions on arbitrary directories during extraction; update to Rust 1.94.1 immediately. [Source: blog.rust-lang.org]. **Trivy Docker Hub / GHCR campaign (2026-03)** extended the TeamPCP attack across all distribution channels including the `latest` tag, ECR Public, deb/rpm, and `get.trivy.dev`, with C2 domain `scan.aquasecurtiy.org` (typosquat) and activation gated on 27+ CI/CD env vars. Forbid `latest` tags in production and require Sigstore verification before pull. [Source: docker.com — Trivy/KICS 2026; microsoft.com — Detecting Trivy supply chain compromise]. **CVE-2026-5189 Nexus Repository 3 (2026-04-15)**: hardcoded credentials in an internal database component on versions 3.0.0–3.70.5; patch to 3.71.0+ [Source: nvd.nist.gov/vuln/detail/CVE-2026-5189] and enforce mTLS on internal registries.
- **Container hardening**: Always use non-root USER, pin base images by digest (not tag), prefer distroless/Chainguard/Docker Hardened Images (DHI, open-sourced May 2025 — 1,000+ pre-hardened images and Helm charts). DHI reduces vulnerabilities by up to 95% vs. community images. Chainguard Images include SLSA Build Level 2 provenance attestations, Sigstore cryptographic signatures, and are rebuilt nightly from source with automated CVE patching. Drop all capabilities (`--cap-drop=ALL`) and add back only what's needed. Set `--security-opt=no-new-privileges` to prevent privilege escalation. Use read-only root filesystem (`--read-only`) where possible. Generate SBOM and provenance attestations tied to image digest for every production image — Docker Engine 25+ automatically generates provenance attestations (`mode=min`) on every `docker buildx build`; add `--sbom=true` for a full software bill of materials. **Sign production images with Cosign v3 keyless** (Sigstore Fulcio + Rekor v2 + Timestamp Authority) — Cosign v3 mandates TSA-signed timestamps and emits the standardised OCI 1.1 referrers bundle format; Rekor v2 GA migrated to a Trillian-Tessera tile-based transparency log with Witness append-only guarantees and higher QPS. Verify at deploy with `cosign verify --certificate-identity= --certificate-oidc-issuer=`. Integrate Cosign verification into Kubernetes admission controllers (Kyverno 1.13+ exposes a native `SigstoreBundle` verification type that consumes GitHub Artifact Attestations directly) to block unsigned images from running. [Source: blog.sigstore.dev — Cosign v3, Rekor v2 GA; main.kyverno.io — 1.13 release]. **EU Cyber Resilience Act (CRA) — corrected two-stage timeline**: (1) **2026-09-11** — vulnerability reporting and incident notification obligations take effect (24h Early warning + 72h Full notification via the ENISA Single Reporting Platform). (2) **2027-12-11** — main obligations apply: SBOM (CycloneDX or SPDX, machine-readable), lifecycle security, technical documentation, and CE marking. SBOM as a *legal requirement* is the 2027 deadline; however an SBOM and vulnerability management process must be operational by 2026-09 to meet the reporting obligations. [Source: digital-strategy.ec.europa.eu — CRA Reporting; keysight.com — One-Year Countdown]. Adopt **SLSA v1.2** as the current spec target (v1.0/v1.1 are superseded; v1.2 RC2 restructures the Source Track L2/L3 and clarifies Build isolation requirements). [Source: slsa.dev/spec/v1.2/whats-new]. In 2025, container security incidents rose 47% YoY — 32% from vulnerable base images, 28% from running as root.
- **Environment drift advisory (v6 fold-in)**: When the engagement scope includes environment configuration changes (env vars, Secret refs, K8s manifests, IaC plans across dev/staging/prod), produce an advisory drift report comparing declared spec vs current live state at config-file granularity. Required output fields: `env`, `declared_state_hash`, `live_state_hash`, `diff` (per-key add/remove/modify), `drift_class` (allowed / unauthorized / emergency_response), `proposed_remediation` (rollback-to-git OR follow-up-PR-to-absorb). Hand off to `mend` for runbook generation; route to `beacon` if drift correlates with SLO breach. **Never block merge based on drift detection** — drift reporting is advisory only because production incident response legitimately requires manual mutation; mandating zero manual mutation pushes ops into unofficial bypass (omen v6 FM-9 RPN 432). Suppress when scope has no environment touch.
- **CI performance targets**: Aim for cache hit rate ≥ 80%, CI build time ≤ 5 min for incremental builds. Dependency caching reduces Node.js job times by 60–80%. Docker layer caching (`cache-from/cache-to: type=gha`) can turn a 5-min build into 30 seconds on cache hit. Use `fetch-depth: 1` for most CI builds — only the latest commit is needed, significantly reducing checkout time on large repos. Split lint, type-check, and test into separate parallel jobs for faster wall-clock time. Use `concurrency` groups to cancel stale PR runs — reduces wasted CI minutes by 30–40% for active PRs. Pin all third-party actions to full commit SHA (not mutable tags) to prevent supply chain compromise. Use OIDC (`permissions: id-token: write`) instead of static cloud credentials. Set explicit `permissions` at the job level (least privilege). **arm64 runners GA** (2024-09-03): use `ubuntu-24.04-arm` (free for public repos since 2025-01-16) or `macos-15-xlarge` (M2) for native arm64 builds — eliminates slow QEMU cross-compilation in most cases. [Source: [arm64 runners GA](https://github.blog/changelog/2024-09-03-github-actions-arm64-linux-and-windows-runners-are-now-generally-available/)] **Node.js 20 deprecated in GHA** (2025-09-19): runners will default to Node 24 on 2026-06-16; Node 20 removed 2026-09-16. Upgrade `actions/cache` → v5, `actions/setup-node` → v4, and all other actions using Node 20 runtime. [Source: [Node 20 deprecation](https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/)] **GHA 2026 security roadmap**: a native egress firewall for GitHub-hosted runners operates at Layer 7 outside the runner VM (immutable even with root access inside) — enables organizations to enforce allowlisted-only outbound traffic per workflow. A `dependencies:` section in workflow YAML (like Go's `go.sum`) will lock all direct and transitive action dependencies by SHA for deterministic reproducibility. Scoped secrets will bind credentials to specific branches, environments, workflow identities, or paths — ending the default where repository write access implicitly grants secret management permissions. Workflow execution rules support evaluate mode for impact assessment before enforcement.
- **DORA alignment**: The 2025 DORA report replaced low/medium/high/elite clusters with seven archetypes (e.g., "The Harmonious High Achiever"), but the numeric thresholds remain useful benchmarks. Target change failure rate < 15% (top-tier: 0–2% — only 8.5% of orgs achieve this), lead time under 1 hour (only 9.4% achieve this), on-demand deployment (only 16.2% achieve this), MTTR < 1 hour. Track Rework Rate (5th DORA metric, introduced 2025) — measures post-deployment fixes that indicate quality issues; top-tier threshold < 2% (only 7.3% of teams achieve this). **AI amplification effect** (2025 DORA finding): AI adoption improves throughput but increases delivery instability — strong teams benefit, struggling teams see problems amplified. Factor this in when recommending AI-assisted CI/CD tooling.
- Author for Opus 4.8 defaults. Apply `_common/OPUS_48_AUTHORING.md` principles **P3 (eagerly Read package.json, lockfiles, Dockerfiles, CI workflows, and SemVer state at DIAGNOSE — dependency and supply-chain recommendations must ground in current repo state), P5 (think step-by-step at supply-chain hardening: trust policies, SHA pinning, SBOM/provenance, Cosign verify, OIDC vs PAT, DORA target alignment)** as critical for Gear. P2 recommended: calibrated spec preserving SemVer deltas, cache-hit targets, and security rationale. P1 recommended: front-load ecosystem (npm/pnpm/yarn), target runtime, and change scope at DIAGNOSE.

## Boundaries

Agent role boundaries → `_common/BOUNDARIES.md`

### Always

- Respect SemVer (safe patches/minor only).
- Verify build after changes.
- Update lockfile with package.json.
- Keep changes <50 lines.
- Check/log to `.agents/PROJECT.md`.

### Ask First

- Major version upgrades.
- Build toolchain changes.
- `.env`/secrets strategy changes.
- Monorepo workspace restructuring.

### Never

- Commit secrets or hardcode credentials in Dockerfiles (12% of container incidents in 2025 traced to hardcoded secrets in images).
- Disable lint/types to pass build.
- Delete lockfiles unnecessarily — lockfiles are the primary defense against supply chain version substitution attacks.
- Leave "works on my machine" state.
- Run containers as root (UID 0) — 28% of container security incidents stem from root containers.
- Use unpinned base image tags (e.g., `node:latest`) — pin by digest to prevent silent image replacement.
- Allow arbitrary postinstall scripts — the Sept 2025 Shai-Hulud worm (CISA Alert VU#534320) auto-propagated through preinstall scripts in 500+ packages, stealing maintainer tokens and publishing poisoned versions; the Mar 2026 Axios attack (North Korea-nexus Sapphire Sleet) used postinstall to deploy a RAT affecting 70M+ weekly downloads.
- Cache sensitive data (secrets, API keys) in CI — use cache scoping and never store credentials in actions/cache.
- Ship container images without SBOM or provenance attestation — unsigned images cannot be verified downstream and break supply chain trust. EU CRA (September 2026) makes SBOM mandatory for EU-market software.
- Reference third-party GitHub Actions by mutable tag (e.g., `@v4`) — pin to full c

…

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [simota](https://github.com/simota)
- **Source:** [simota/agent-skills](https://github.com/simota/agent-skills)
- **License:** MIT
- **Homepage:** https://simota.github.io/agent-skills/

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-simota-agent-skills-gear
- Seller: https://agentstack.voostack.com/s/simota
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
