opencode-skills-collection 4.0.68 → 4.0.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled-skills/.antigravity-install-manifest.json +266 -1
- package/bundled-skills/access-review/SKILL.md +394 -0
- package/bundled-skills/access-review/references/details.md +121 -0
- package/bundled-skills/agent-evals/SKILL.md +420 -0
- package/bundled-skills/agent-observability/SKILL.md +346 -0
- package/bundled-skills/agent-observability/references/details.md +786 -0
- package/bundled-skills/ai-agent-security/SKILL.md +393 -0
- package/bundled-skills/ai-agent-security/references/details.md +912 -0
- package/bundled-skills/ai-coding-agent-guardrails/SKILL.md +442 -0
- package/bundled-skills/ai-coding-agent-guardrails/references/details.md +753 -0
- package/bundled-skills/ai-inference-service-mesh/SKILL.md +449 -0
- package/bundled-skills/ai-pipeline-orchestration/SKILL.md +287 -0
- package/bundled-skills/ai-red-teaming/SKILL.md +409 -0
- package/bundled-skills/ai-security-hardening/SKILL.md +343 -0
- package/bundled-skills/ai-sre-incident-response/SKILL.md +336 -0
- package/bundled-skills/alerting-oncall/SKILL.md +458 -0
- package/bundled-skills/alerting-oncall/references/details.md +84 -0
- package/bundled-skills/apk-redteam-pipeline/SKILL.md +446 -0
- package/bundled-skills/argocd-gitops/SKILL.md +469 -0
- package/bundled-skills/arm-templates/SKILL.md +438 -0
- package/bundled-skills/arm-templates/references/details.md +64 -0
- package/bundled-skills/asset-inventory/SKILL.md +412 -0
- package/bundled-skills/asset-inventory/references/details.md +127 -0
- package/bundled-skills/audit-logging/SKILL.md +476 -0
- package/bundled-skills/aws-cloudtrail/SKILL.md +486 -0
- package/bundled-skills/aws-cost-optimization/SKILL.md +331 -0
- package/bundled-skills/aws-ec2/SKILL.md +426 -0
- package/bundled-skills/aws-ecs-fargate/SKILL.md +388 -0
- package/bundled-skills/aws-iam/SKILL.md +463 -0
- package/bundled-skills/aws-lambda/SKILL.md +428 -0
- package/bundled-skills/aws-rds/SKILL.md +380 -0
- package/bundled-skills/aws-s3/SKILL.md +434 -0
- package/bundled-skills/aws-secrets-manager/SKILL.md +486 -0
- package/bundled-skills/aws-vpc/SKILL.md +436 -0
- package/bundled-skills/azure-ai-document-intelligence-ts/SKILL.md +1 -1
- package/bundled-skills/azure-aks/SKILL.md +423 -0
- package/bundled-skills/azure-devops/SKILL.md +457 -0
- package/bundled-skills/azure-functions-devsec/SKILL.md +436 -0
- package/bundled-skills/azure-keyvault/SKILL.md +455 -0
- package/bundled-skills/azure-keyvault/references/details.md +83 -0
- package/bundled-skills/azure-monitor-audit/SKILL.md +379 -0
- package/bundled-skills/azure-networking/SKILL.md +448 -0
- package/bundled-skills/azure-networking/references/details.md +135 -0
- package/bundled-skills/azure-sql/SKILL.md +413 -0
- package/bundled-skills/azure-sql/references/details.md +113 -0
- package/bundled-skills/azure-vms/SKILL.md +402 -0
- package/bundled-skills/azure-vms/references/details.md +134 -0
- package/bundled-skills/backup-recovery/SKILL.md +388 -0
- package/bundled-skills/bb-methodology/SKILL.md +451 -0
- package/bundled-skills/bb-methodology/references/details.md +120 -0
- package/bundled-skills/block-storage/SKILL.md +371 -0
- package/bundled-skills/blue-green-deploy/SKILL.md +453 -0
- package/bundled-skills/blue-green-deploy/references/details.md +90 -0
- package/bundled-skills/bug-bounty/SKILL.md +447 -0
- package/bundled-skills/bug-bounty/references/details.md +1316 -0
- package/bundled-skills/bugcrowd-reporting/SKILL.md +351 -0
- package/bundled-skills/business-continuity/SKILL.md +463 -0
- package/bundled-skills/career-ops/SKILL.md +186 -0
- package/bundled-skills/cdn-setup/SKILL.md +374 -0
- package/bundled-skills/change-management/SKILL.md +438 -0
- package/bundled-skills/change-management/references/details.md +105 -0
- package/bundled-skills/circleci/SKILL.md +475 -0
- package/bundled-skills/cis-benchmarks/SKILL.md +150 -0
- package/bundled-skills/cloudflare-pages/SKILL.md +318 -0
- package/bundled-skills/cloudflare-r2/SKILL.md +353 -0
- package/bundled-skills/cloudflare-workers/SKILL.md +415 -0
- package/bundled-skills/cloudflare-zero-trust/SKILL.md +361 -0
- package/bundled-skills/cloudformation/SKILL.md +461 -0
- package/bundled-skills/constraint-driven-development/SKILL.md +335 -0
- package/bundled-skills/constraint-driven-development/references/floor-guard.md +99 -0
- package/bundled-skills/container-hardening/SKILL.md +126 -0
- package/bundled-skills/container-registries/SKILL.md +435 -0
- package/bundled-skills/container-scanning/SKILL.md +416 -0
- package/bundled-skills/convex-backend/SKILL.md +338 -0
- package/bundled-skills/dast-scanning/SKILL.md +437 -0
- package/bundled-skills/database-backups/SKILL.md +425 -0
- package/bundled-skills/datadog/SKILL.md +487 -0
- package/bundled-skills/dependency-scanning/SKILL.md +457 -0
- package/bundled-skills/devcontainers-nix/SKILL.md +416 -0
- package/bundled-skills/disaster-recovery/SKILL.md +374 -0
- package/bundled-skills/disaster-recovery/references/details.md +219 -0
- package/bundled-skills/dns-management/SKILL.md +375 -0
- package/bundled-skills/docker-compose/SKILL.md +482 -0
- package/bundled-skills/docker-management/SKILL.md +426 -0
- package/bundled-skills/ebpf-observability/SKILL.md +436 -0
- package/bundled-skills/ebpf-observability/references/details.md +542 -0
- package/bundled-skills/elk-stack/SKILL.md +487 -0
- package/bundled-skills/enterprise-vpn-attack/SKILL.md +395 -0
- package/bundled-skills/evidence-hygiene/SKILL.md +404 -0
- package/bundled-skills/feature-flags/SKILL.md +426 -0
- package/bundled-skills/feature-flags/references/details.md +86 -0
- package/bundled-skills/fedramp-compliance/SKILL.md +453 -0
- package/bundled-skills/firebase-app-platform/SKILL.md +381 -0
- package/bundled-skills/firewall-config/SKILL.md +479 -0
- package/bundled-skills/gcp-audit-logs/SKILL.md +452 -0
- package/bundled-skills/gcp-audit-logs/references/details.md +56 -0
- package/bundled-skills/gcp-cloud-functions/SKILL.md +284 -0
- package/bundled-skills/gcp-cloud-sql/SKILL.md +277 -0
- package/bundled-skills/gcp-compute/SKILL.md +319 -0
- package/bundled-skills/gcp-gke/SKILL.md +307 -0
- package/bundled-skills/gcp-networking/SKILL.md +293 -0
- package/bundled-skills/gcp-secret-manager/SKILL.md +421 -0
- package/bundled-skills/gcp-secret-manager/references/details.md +131 -0
- package/bundled-skills/gdpr-compliance/SKILL.md +451 -0
- package/bundled-skills/gdpr-compliance/references/details.md +145 -0
- package/bundled-skills/geo-audit/SKILL.md +368 -0
- package/bundled-skills/geo-brand-mentions/SKILL.md +68 -0
- package/bundled-skills/geo-brand-mentions/references/details.md +471 -0
- package/bundled-skills/geo-citability/SKILL.md +350 -0
- package/bundled-skills/geo-compare/SKILL.md +340 -0
- package/bundled-skills/geo-content/SKILL.md +383 -0
- package/bundled-skills/geo-crawlers/SKILL.md +408 -0
- package/bundled-skills/geo-llmstxt/SKILL.md +464 -0
- package/bundled-skills/geo-platform-optimizer/SKILL.md +314 -0
- package/bundled-skills/geo-proposal/SKILL.md +378 -0
- package/bundled-skills/geo-prospect/SKILL.md +225 -0
- package/bundled-skills/geo-report/SKILL.md +436 -0
- package/bundled-skills/geo-report-pdf/SKILL.md +157 -0
- package/bundled-skills/geo-schema/SKILL.md +408 -0
- package/bundled-skills/geo-technical/SKILL.md +78 -0
- package/bundled-skills/geo-technical/references/details.md +543 -0
- package/bundled-skills/git-workflow/SKILL.md +460 -0
- package/bundled-skills/github-actions/SKILL.md +368 -0
- package/bundled-skills/gitlab-ci/SKILL.md +340 -0
- package/bundled-skills/gpu-kubernetes-operations/SKILL.md +468 -0
- package/bundled-skills/gpu-server-management/SKILL.md +236 -0
- package/bundled-skills/hashicorp-vault/SKILL.md +408 -0
- package/bundled-skills/helm-charts/SKILL.md +469 -0
- package/bundled-skills/hipaa-compliance/SKILL.md +451 -0
- package/bundled-skills/hunt-aspnet/SKILL.md +321 -0
- package/bundled-skills/hunt-ato/SKILL.md +184 -0
- package/bundled-skills/hunt-auth-bypass/SKILL.md +426 -0
- package/bundled-skills/hunt-auth-bypass/references/details.md +80 -0
- package/bundled-skills/hunt-brute-force/SKILL.md +341 -0
- package/bundled-skills/hunt-business-logic/SKILL.md +281 -0
- package/bundled-skills/hunt-cache-poison/SKILL.md +382 -0
- package/bundled-skills/hunt-captcha-bypass/SKILL.md +136 -0
- package/bundled-skills/hunt-cicd/SKILL.md +311 -0
- package/bundled-skills/hunt-clickjacking/SKILL.md +110 -0
- package/bundled-skills/hunt-cors/SKILL.md +335 -0
- package/bundled-skills/hunt-dom/SKILL.md +323 -0
- package/bundled-skills/hunt-exceptional-conditions/SKILL.md +111 -0
- package/bundled-skills/hunt-file-upload/SKILL.md +202 -0
- package/bundled-skills/hunt-fintech-graphql/SKILL.md +289 -0
- package/bundled-skills/hunt-forgot-password/SKILL.md +114 -0
- package/bundled-skills/hunt-grpc/SKILL.md +317 -0
- package/bundled-skills/hunt-host-header/SKILL.md +309 -0
- package/bundled-skills/hunt-html-injection/SKILL.md +106 -0
- package/bundled-skills/hunt-http-smuggling/SKILL.md +129 -0
- package/bundled-skills/hunt-http-smuggling/references/phase2h-smuggling-cachepoison.md +177 -0
- package/bundled-skills/hunt-idor/SKILL.md +434 -0
- package/bundled-skills/hunt-jwt-crypto/SKILL.md +221 -0
- package/bundled-skills/hunt-k8s/SKILL.md +337 -0
- package/bundled-skills/hunt-laravel/SKILL.md +255 -0
- package/bundled-skills/hunt-ldap/SKILL.md +351 -0
- package/bundled-skills/hunt-lfi/SKILL.md +311 -0
- package/bundled-skills/hunt-llm-ai/SKILL.md +289 -0
- package/bundled-skills/hunt-mfa-bypass/SKILL.md +177 -0
- package/bundled-skills/hunt-misc/SKILL.md +378 -0
- package/bundled-skills/hunt-nextjs/SKILL.md +299 -0
- package/bundled-skills/hunt-nodejs/SKILL.md +263 -0
- package/bundled-skills/hunt-nosqli/SKILL.md +210 -0
- package/bundled-skills/hunt-ntlm-info/SKILL.md +314 -0
- package/bundled-skills/hunt-oauth/SKILL.md +459 -0
- package/bundled-skills/hunt-open-redirect/SKILL.md +223 -0
- package/bundled-skills/hunt-race-condition/SKILL.md +381 -0
- package/bundled-skills/hunt-race-condition/references/details.md +159 -0
- package/bundled-skills/hunt-rag-vector/SKILL.md +212 -0
- package/bundled-skills/hunt-rce/SKILL.md +444 -0
- package/bundled-skills/hunt-rce/references/details.md +110 -0
- package/bundled-skills/hunt-saml/SKILL.md +156 -0
- package/bundled-skills/hunt-session/SKILL.md +342 -0
- package/bundled-skills/hunt-shadow-api/SKILL.md +198 -0
- package/bundled-skills/hunt-source-leak/SKILL.md +345 -0
- package/bundled-skills/hunt-spa-api/SKILL.md +163 -0
- package/bundled-skills/hunt-springboot/SKILL.md +285 -0
- package/bundled-skills/hunt-sqli/SKILL.md +466 -0
- package/bundled-skills/hunt-ssrf/SKILL.md +396 -0
- package/bundled-skills/hunt-ssrf/references/details.md +179 -0
- package/bundled-skills/hunt-ssti/SKILL.md +163 -0
- package/bundled-skills/hunt-subdomain/SKILL.md +379 -0
- package/bundled-skills/hunt-tls-network/SKILL.md +399 -0
- package/bundled-skills/hunt-xxe/SKILL.md +466 -0
- package/bundled-skills/i-have-adhd/SKILL.md +170 -0
- package/bundled-skills/identity-access-management/SKILL.md +382 -0
- package/bundled-skills/identity-access-management/references/details.md +524 -0
- package/bundled-skills/incident-management/SKILL.md +484 -0
- package/bundled-skills/incident-response/SKILL.md +448 -0
- package/bundled-skills/incident-response/references/details.md +113 -0
- package/bundled-skills/interview-me/SKILL.md +248 -0
- package/bundled-skills/iso27001-compliance/SKILL.md +460 -0
- package/bundled-skills/jenkins/SKILL.md +462 -0
- package/bundled-skills/jev-use/SKILL.md +158 -0
- package/bundled-skills/kubernetes-hardening/SKILL.md +154 -0
- package/bundled-skills/kubernetes-ops/SKILL.md +449 -0
- package/bundled-skills/kubernetes-ops/references/details.md +108 -0
- package/bundled-skills/kustomize/SKILL.md +478 -0
- package/bundled-skills/linux-administration/SKILL.md +367 -0
- package/bundled-skills/linux-hardening/SKILL.md +154 -0
- package/bundled-skills/llm-app-security/SKILL.md +389 -0
- package/bundled-skills/llm-app-security/references/details.md +674 -0
- package/bundled-skills/llm-caching/SKILL.md +334 -0
- package/bundled-skills/llm-cost-optimization/SKILL.md +311 -0
- package/bundled-skills/llm-fine-tuning/SKILL.md +329 -0
- package/bundled-skills/llm-gateway/SKILL.md +282 -0
- package/bundled-skills/llm-inference-scaling/SKILL.md +286 -0
- package/bundled-skills/llmops-platform-engineering/SKILL.md +472 -0
- package/bundled-skills/load-balancing/SKILL.md +403 -0
- package/bundled-skills/loki-logging/SKILL.md +479 -0
- package/bundled-skills/m365-entra-attack/SKILL.md +423 -0
- package/bundled-skills/mac-mini-llm-lab/SKILL.md +350 -0
- package/bundled-skills/mcp-server-security/SKILL.md +356 -0
- package/bundled-skills/mcp-server-security/references/details.md +745 -0
- package/bundled-skills/mdm-device-management/SKILL.md +404 -0
- package/bundled-skills/mdm-device-management/references/details.md +410 -0
- package/bundled-skills/meme-coin-audit/SKILL.md +402 -0
- package/bundled-skills/mid-engagement-ir-detection/SKILL.md +377 -0
- package/bundled-skills/model-registry-governance/SKILL.md +452 -0
- package/bundled-skills/model-serving-kubernetes/SKILL.md +339 -0
- package/bundled-skills/model-supply-chain-security/SKILL.md +427 -0
- package/bundled-skills/mongodb/SKILL.md +436 -0
- package/bundled-skills/multi-tenant-llm-hosting/SKILL.md +435 -0
- package/bundled-skills/multi-tenant-llm-hosting/references/details.md +211 -0
- package/bundled-skills/mysql/SKILL.md +390 -0
- package/bundled-skills/new-relic/SKILL.md +472 -0
- package/bundled-skills/nfs-storage/SKILL.md +356 -0
- package/bundled-skills/object-storage/SKILL.md +378 -0
- package/bundled-skills/offensive-osint/SKILL.md +443 -0
- package/bundled-skills/okta-attack/SKILL.md +436 -0
- package/bundled-skills/ollama-stack/SKILL.md +379 -0
- package/bundled-skills/openclaw-deployment-hardening/SKILL.md +135 -0
- package/bundled-skills/openclaw-local-mac-mini/SKILL.md +426 -0
- package/bundled-skills/openclaw-local-mac-mini/references/details.md +221 -0
- package/bundled-skills/openclaw-security-hardening/SKILL.md +135 -0
- package/bundled-skills/openshift/SKILL.md +485 -0
- package/bundled-skills/opentelemetry/SKILL.md +438 -0
- package/bundled-skills/opentelemetry/references/details.md +78 -0
- package/bundled-skills/opentofu-migration/SKILL.md +349 -0
- package/bundled-skills/osint-methodology/SKILL.md +460 -0
- package/bundled-skills/osint-methodology/references/details.md +1350 -0
- package/bundled-skills/pci-dss-compliance/SKILL.md +446 -0
- package/bundled-skills/penetration-testing/SKILL.md +152 -0
- package/bundled-skills/performance-tuning/SKILL.md +381 -0
- package/bundled-skills/planetscale/SKILL.md +297 -0
- package/bundled-skills/platform-engineering/SKILL.md +348 -0
- package/bundled-skills/platform-engineering/references/details.md +944 -0
- package/bundled-skills/podman/SKILL.md +405 -0
- package/bundled-skills/policy-as-code/SKILL.md +434 -0
- package/bundled-skills/policy-as-code/references/details.md +204 -0
- package/bundled-skills/postgresql-devsec/SKILL.md +378 -0
- package/bundled-skills/prometheus-grafana/SKILL.md +469 -0
- package/bundled-skills/prompt-injection-defense/SKILL.md +483 -0
- package/bundled-skills/rag-infrastructure/SKILL.md +269 -0
- package/bundled-skills/rag-observability-evals/SKILL.md +444 -0
- package/bundled-skills/rag-observability-evals/references/details.md +92 -0
- package/bundled-skills/recon-scope-triage/SKILL.md +128 -0
- package/bundled-skills/redis/SKILL.md +421 -0
- package/bundled-skills/redteam-report-template/SKILL.md +370 -0
- package/bundled-skills/report-writing/SKILL.md +426 -0
- package/bundled-skills/report-writing/references/details.md +187 -0
- package/bundled-skills/reverse-proxy/SKILL.md +420 -0
- package/bundled-skills/runbook-creation/SKILL.md +438 -0
- package/bundled-skills/runbook-creation/references/details.md +71 -0
- package/bundled-skills/saas-security-posture/SKILL.md +415 -0
- package/bundled-skills/sast-scanning/SKILL.md +444 -0
- package/bundled-skills/sbom-supply-chain/SKILL.md +433 -0
- package/bundled-skills/security-arsenal/SKILL.md +446 -0
- package/bundled-skills/security-arsenal/references/details.md +540 -0
- package/bundled-skills/security-automation/SKILL.md +146 -0
- package/bundled-skills/semantic-versioning/SKILL.md +434 -0
- package/bundled-skills/semantic-versioning/references/details.md +83 -0
- package/bundled-skills/service-mesh/SKILL.md +422 -0
- package/bundled-skills/soc2-compliance/SKILL.md +409 -0
- package/bundled-skills/sops-encryption/SKILL.md +124 -0
- package/bundled-skills/sre-dashboards/SKILL.md +143 -0
- package/bundled-skills/ssh-configuration/SKILL.md +324 -0
- package/bundled-skills/ssl-tls-management/SKILL.md +428 -0
- package/bundled-skills/ssl-tls-management/references/details.md +99 -0
- package/bundled-skills/startup-it-troubleshooting/SKILL.md +415 -0
- package/bundled-skills/supply-chain-attack-recon/SKILL.md +453 -0
- package/bundled-skills/supply-chain-attack-recon/references/details.md +258 -0
- package/bundled-skills/systemd-services/SKILL.md +379 -0
- package/bundled-skills/terraform-aws/SKILL.md +125 -0
- package/bundled-skills/terraform-azure/SKILL.md +415 -0
- package/bundled-skills/terraform-azure/references/details.md +231 -0
- package/bundled-skills/terraform-gcp/SKILL.md +369 -0
- package/bundled-skills/threat-modeling/SKILL.md +487 -0
- package/bundled-skills/user-management/SKILL.md +383 -0
- package/bundled-skills/using-agent-skills/SKILL.md +220 -0
- package/bundled-skills/vector-database-ops/SKILL.md +300 -0
- package/bundled-skills/vendor-management/SKILL.md +439 -0
- package/bundled-skills/vendor-management/references/details.md +109 -0
- package/bundled-skills/vercel-deployments/SKILL.md +296 -0
- package/bundled-skills/vllm-server/SKILL.md +236 -0
- package/bundled-skills/vmware-vcenter-attack/SKILL.md +412 -0
- package/bundled-skills/vpn-setup/SKILL.md +452 -0
- package/bundled-skills/vulnerability-scanning/SKILL.md +448 -0
- package/bundled-skills/waf-setup/SKILL.md +354 -0
- package/bundled-skills/waf-setup/references/details.md +211 -0
- package/bundled-skills/web2-recon/SKILL.md +440 -0
- package/bundled-skills/web2-recon/references/details.md +319 -0
- package/bundled-skills/web3-audit/SKILL.md +445 -0
- package/bundled-skills/web3-audit/references/details.md +224 -0
- package/bundled-skills/windows-hardening/SKILL.md +454 -0
- package/bundled-skills/windows-hardening/references/details.md +204 -0
- package/bundled-skills/windows-server/SKILL.md +318 -0
- package/bundled-skills/zero-trust/SKILL.md +461 -0
- package/package.json +1 -1
- package/skills_index.json +6943 -323
|
@@ -0,0 +1,475 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: circleci
|
|
3
|
+
description: Configure CircleCI workflows and orbs for continuous integration and
|
|
4
|
+
deployment.
|
|
5
|
+
category: devops
|
|
6
|
+
risk: critical
|
|
7
|
+
source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
|
|
8
|
+
source_repo: BagelHole/DevOps-Security-Agent-Skills
|
|
9
|
+
source_type: community
|
|
10
|
+
date_added: '2026-09-20'
|
|
11
|
+
license: MIT
|
|
12
|
+
license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
|
|
13
|
+
compatibility: Requires the relevant platform CLIs (kubectl, helm, terraform, git,
|
|
14
|
+
CI runners) and authorized access to the target environment. Docs-only; helper scripts
|
|
15
|
+
and templates not bundled.
|
|
16
|
+
metadata:
|
|
17
|
+
author: devops-skills
|
|
18
|
+
version: '1.0'
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# CircleCI
|
|
22
|
+
|
|
23
|
+
Build, test, and deploy applications using CircleCI's cloud-native CI/CD platform.
|
|
24
|
+
|
|
25
|
+
## When to Use This Skill
|
|
26
|
+
|
|
27
|
+
Use this skill when:
|
|
28
|
+
- Setting up CI/CD pipelines with CircleCI
|
|
29
|
+
- Using orbs for reusable configuration
|
|
30
|
+
- Optimizing build times with caching and parallelism
|
|
31
|
+
- Configuring CircleCI workflows and approvals
|
|
32
|
+
- Managing CircleCI contexts and secrets
|
|
33
|
+
|
|
34
|
+
## Prerequisites
|
|
35
|
+
|
|
36
|
+
- CircleCI account connected to repository
|
|
37
|
+
- Project enabled in CircleCI dashboard
|
|
38
|
+
- Basic YAML understanding
|
|
39
|
+
|
|
40
|
+
## Configuration File
|
|
41
|
+
|
|
42
|
+
Create `.circleci/config.yml`:
|
|
43
|
+
|
|
44
|
+
```yaml
|
|
45
|
+
version: 2.1
|
|
46
|
+
|
|
47
|
+
orbs:
|
|
48
|
+
node: circleci/node@5.2
|
|
49
|
+
docker: circleci/docker@2.4
|
|
50
|
+
|
|
51
|
+
executors:
|
|
52
|
+
default:
|
|
53
|
+
docker:
|
|
54
|
+
- image: cimg/node:20.10
|
|
55
|
+
working_directory: ~/project
|
|
56
|
+
|
|
57
|
+
jobs:
|
|
58
|
+
build:
|
|
59
|
+
executor: default
|
|
60
|
+
steps:
|
|
61
|
+
- checkout
|
|
62
|
+
- node/install-packages:
|
|
63
|
+
pkg-manager: npm
|
|
64
|
+
- run:
|
|
65
|
+
name: Build application
|
|
66
|
+
command: npm run build
|
|
67
|
+
- persist_to_workspace:
|
|
68
|
+
root: .
|
|
69
|
+
paths:
|
|
70
|
+
- dist
|
|
71
|
+
|
|
72
|
+
test:
|
|
73
|
+
executor: default
|
|
74
|
+
steps:
|
|
75
|
+
- checkout
|
|
76
|
+
- node/install-packages:
|
|
77
|
+
pkg-manager: npm
|
|
78
|
+
- run:
|
|
79
|
+
name: Run tests
|
|
80
|
+
command: npm test
|
|
81
|
+
|
|
82
|
+
deploy:
|
|
83
|
+
executor: default
|
|
84
|
+
steps:
|
|
85
|
+
- checkout
|
|
86
|
+
- attach_workspace:
|
|
87
|
+
at: .
|
|
88
|
+
- run:
|
|
89
|
+
name: Deploy
|
|
90
|
+
command: ./deploy.sh
|
|
91
|
+
|
|
92
|
+
workflows:
|
|
93
|
+
build-test-deploy:
|
|
94
|
+
jobs:
|
|
95
|
+
- build
|
|
96
|
+
- test:
|
|
97
|
+
requires:
|
|
98
|
+
- build
|
|
99
|
+
- deploy:
|
|
100
|
+
requires:
|
|
101
|
+
- test
|
|
102
|
+
filters:
|
|
103
|
+
branches:
|
|
104
|
+
only: main
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Executors
|
|
108
|
+
|
|
109
|
+
### Docker Executor
|
|
110
|
+
|
|
111
|
+
```yaml
|
|
112
|
+
executors:
|
|
113
|
+
node:
|
|
114
|
+
docker:
|
|
115
|
+
- image: cimg/node:20.10
|
|
116
|
+
- image: cimg/postgres:15.0
|
|
117
|
+
environment:
|
|
118
|
+
POSTGRES_USER: test
|
|
119
|
+
POSTGRES_DB: testdb
|
|
120
|
+
working_directory: ~/app
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Machine Executor
|
|
124
|
+
|
|
125
|
+
```yaml
|
|
126
|
+
executors:
|
|
127
|
+
linux-machine:
|
|
128
|
+
machine:
|
|
129
|
+
image: ubuntu-2204:current
|
|
130
|
+
resource_class: large
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### macOS Executor
|
|
134
|
+
|
|
135
|
+
```yaml
|
|
136
|
+
executors:
|
|
137
|
+
macos:
|
|
138
|
+
macos:
|
|
139
|
+
xcode: "15.0.0"
|
|
140
|
+
resource_class: macos.m1.medium.gen1
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## Caching
|
|
144
|
+
|
|
145
|
+
### Dependency Caching
|
|
146
|
+
|
|
147
|
+
```yaml
|
|
148
|
+
jobs:
|
|
149
|
+
build:
|
|
150
|
+
steps:
|
|
151
|
+
- checkout
|
|
152
|
+
- restore_cache:
|
|
153
|
+
keys:
|
|
154
|
+
- v1-deps-{{ checksum "package-lock.json" }}
|
|
155
|
+
- v1-deps-
|
|
156
|
+
- run: npm ci
|
|
157
|
+
- save_cache:
|
|
158
|
+
key: v1-deps-{{ checksum "package-lock.json" }}
|
|
159
|
+
paths:
|
|
160
|
+
- node_modules
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Multi-Key Caching
|
|
164
|
+
|
|
165
|
+
```yaml
|
|
166
|
+
- restore_cache:
|
|
167
|
+
keys:
|
|
168
|
+
- v1-{{ .Branch }}-{{ checksum "package-lock.json" }}
|
|
169
|
+
- v1-{{ .Branch }}-
|
|
170
|
+
- v1-main-
|
|
171
|
+
- v1-
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
## Workspaces
|
|
175
|
+
|
|
176
|
+
### Persist Data
|
|
177
|
+
|
|
178
|
+
```yaml
|
|
179
|
+
jobs:
|
|
180
|
+
build:
|
|
181
|
+
steps:
|
|
182
|
+
- checkout
|
|
183
|
+
- run: npm run build
|
|
184
|
+
- persist_to_workspace:
|
|
185
|
+
root: .
|
|
186
|
+
paths:
|
|
187
|
+
- dist
|
|
188
|
+
- node_modules
|
|
189
|
+
|
|
190
|
+
deploy:
|
|
191
|
+
steps:
|
|
192
|
+
- attach_workspace:
|
|
193
|
+
at: ~/project
|
|
194
|
+
- run: ./deploy.sh
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Parallelism
|
|
198
|
+
|
|
199
|
+
### Test Splitting
|
|
200
|
+
|
|
201
|
+
```yaml
|
|
202
|
+
jobs:
|
|
203
|
+
test:
|
|
204
|
+
parallelism: 4
|
|
205
|
+
steps:
|
|
206
|
+
- checkout
|
|
207
|
+
- run:
|
|
208
|
+
name: Run tests
|
|
209
|
+
command: |
|
|
210
|
+
TESTFILES=$(circleci tests glob "test/**/*.test.js" | circleci tests split --split-by=timings)
|
|
211
|
+
npm test -- $TESTFILES
|
|
212
|
+
- store_test_results:
|
|
213
|
+
path: test-results
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
## Workflows
|
|
217
|
+
|
|
218
|
+
### Sequential Jobs
|
|
219
|
+
|
|
220
|
+
```yaml
|
|
221
|
+
workflows:
|
|
222
|
+
pipeline:
|
|
223
|
+
jobs:
|
|
224
|
+
- build
|
|
225
|
+
- test:
|
|
226
|
+
requires:
|
|
227
|
+
- build
|
|
228
|
+
- deploy:
|
|
229
|
+
requires:
|
|
230
|
+
- test
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### Parallel Jobs
|
|
234
|
+
|
|
235
|
+
```yaml
|
|
236
|
+
workflows:
|
|
237
|
+
pipeline:
|
|
238
|
+
jobs:
|
|
239
|
+
- build
|
|
240
|
+
- test-unit:
|
|
241
|
+
requires:
|
|
242
|
+
- build
|
|
243
|
+
- test-integration:
|
|
244
|
+
requires:
|
|
245
|
+
- build
|
|
246
|
+
- deploy:
|
|
247
|
+
requires:
|
|
248
|
+
- test-unit
|
|
249
|
+
- test-integration
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### Manual Approval
|
|
253
|
+
|
|
254
|
+
```yaml
|
|
255
|
+
workflows:
|
|
256
|
+
deploy-prod:
|
|
257
|
+
jobs:
|
|
258
|
+
- build
|
|
259
|
+
- test
|
|
260
|
+
- hold:
|
|
261
|
+
type: approval
|
|
262
|
+
requires:
|
|
263
|
+
- test
|
|
264
|
+
- deploy-production:
|
|
265
|
+
requires:
|
|
266
|
+
- hold
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
### Scheduled Workflows
|
|
270
|
+
|
|
271
|
+
```yaml
|
|
272
|
+
workflows:
|
|
273
|
+
nightly:
|
|
274
|
+
triggers:
|
|
275
|
+
- schedule:
|
|
276
|
+
cron: "0 2 * * *"
|
|
277
|
+
filters:
|
|
278
|
+
branches:
|
|
279
|
+
only:
|
|
280
|
+
- main
|
|
281
|
+
jobs:
|
|
282
|
+
- build
|
|
283
|
+
- test
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### Branch Filtering
|
|
287
|
+
|
|
288
|
+
```yaml
|
|
289
|
+
workflows:
|
|
290
|
+
build-deploy:
|
|
291
|
+
jobs:
|
|
292
|
+
- build:
|
|
293
|
+
filters:
|
|
294
|
+
branches:
|
|
295
|
+
only:
|
|
296
|
+
- main
|
|
297
|
+
- /feature-.*/
|
|
298
|
+
- deploy:
|
|
299
|
+
filters:
|
|
300
|
+
branches:
|
|
301
|
+
only: main
|
|
302
|
+
tags:
|
|
303
|
+
only: /^v.*/
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
## Orbs
|
|
307
|
+
|
|
308
|
+
### Using Orbs
|
|
309
|
+
|
|
310
|
+
```yaml
|
|
311
|
+
version: 2.1
|
|
312
|
+
|
|
313
|
+
orbs:
|
|
314
|
+
aws-cli: circleci/aws-cli@4.1
|
|
315
|
+
kubernetes: circleci/kubernetes@1.3
|
|
316
|
+
|
|
317
|
+
jobs:
|
|
318
|
+
deploy:
|
|
319
|
+
executor: aws-cli/default
|
|
320
|
+
steps:
|
|
321
|
+
- aws-cli/setup:
|
|
322
|
+
aws_access_key_id: AWS_ACCESS_KEY_ID
|
|
323
|
+
aws_secret_access_key: AWS_SECRET_ACCESS_KEY
|
|
324
|
+
- kubernetes/install-kubectl
|
|
325
|
+
- run: kubectl apply -f k8s/
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### Common Orbs
|
|
329
|
+
|
|
330
|
+
```yaml
|
|
331
|
+
orbs:
|
|
332
|
+
node: circleci/node@5.2 # Node.js
|
|
333
|
+
docker: circleci/docker@2.4 # Docker builds
|
|
334
|
+
aws-cli: circleci/aws-cli@4.1 # AWS CLI
|
|
335
|
+
aws-ecr: circleci/aws-ecr@9.0 # ECR push
|
|
336
|
+
aws-ecs: circleci/aws-ecs@4.0 # ECS deploy
|
|
337
|
+
gcp-cli: circleci/gcp-cli@3.1 # GCP CLI
|
|
338
|
+
kubernetes: circleci/kubernetes@1.3 # K8s deploy
|
|
339
|
+
slack: circleci/slack@4.12 # Notifications
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
## Docker Builds
|
|
343
|
+
|
|
344
|
+
```yaml
|
|
345
|
+
version: 2.1
|
|
346
|
+
|
|
347
|
+
orbs:
|
|
348
|
+
docker: circleci/docker@2.4
|
|
349
|
+
|
|
350
|
+
jobs:
|
|
351
|
+
build-and-push:
|
|
352
|
+
executor: docker/docker
|
|
353
|
+
steps:
|
|
354
|
+
- setup_remote_docker:
|
|
355
|
+
version: 20.10.24
|
|
356
|
+
- checkout
|
|
357
|
+
- docker/check
|
|
358
|
+
- docker/build:
|
|
359
|
+
image: myorg/myapp
|
|
360
|
+
tag: $CIRCLE_SHA1
|
|
361
|
+
- docker/push:
|
|
362
|
+
image: myorg/myapp
|
|
363
|
+
tag: $CIRCLE_SHA1
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
## Environment Variables
|
|
367
|
+
|
|
368
|
+
### Project Variables
|
|
369
|
+
|
|
370
|
+
Set in CircleCI Project Settings > Environment Variables
|
|
371
|
+
|
|
372
|
+
### Contexts
|
|
373
|
+
|
|
374
|
+
```yaml
|
|
375
|
+
workflows:
|
|
376
|
+
deploy:
|
|
377
|
+
jobs:
|
|
378
|
+
- deploy-staging:
|
|
379
|
+
context: staging-secrets
|
|
380
|
+
- deploy-production:
|
|
381
|
+
context: production-secrets
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
### Using Variables
|
|
385
|
+
|
|
386
|
+
```yaml
|
|
387
|
+
jobs:
|
|
388
|
+
deploy:
|
|
389
|
+
steps:
|
|
390
|
+
- run:
|
|
391
|
+
name: Deploy
|
|
392
|
+
command: |
|
|
393
|
+
aws s3 sync dist/ s3://$S3_BUCKET
|
|
394
|
+
environment:
|
|
395
|
+
AWS_DEFAULT_REGION: us-east-1
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
## Artifacts and Test Results
|
|
399
|
+
|
|
400
|
+
```yaml
|
|
401
|
+
jobs:
|
|
402
|
+
test:
|
|
403
|
+
steps:
|
|
404
|
+
- run:
|
|
405
|
+
name: Run tests
|
|
406
|
+
command: npm test -- --coverage
|
|
407
|
+
- store_test_results:
|
|
408
|
+
path: test-results
|
|
409
|
+
- store_artifacts:
|
|
410
|
+
path: coverage
|
|
411
|
+
destination: coverage-report
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
## Resource Classes
|
|
415
|
+
|
|
416
|
+
```yaml
|
|
417
|
+
jobs:
|
|
418
|
+
build:
|
|
419
|
+
docker:
|
|
420
|
+
- image: cimg/node:20.10
|
|
421
|
+
resource_class: large # 4 vCPU, 8GB RAM
|
|
422
|
+
steps:
|
|
423
|
+
- checkout
|
|
424
|
+
- run: npm run build
|
|
425
|
+
|
|
426
|
+
# Available classes:
|
|
427
|
+
# small: 1 vCPU, 2GB RAM
|
|
428
|
+
# medium: 2 vCPU, 4GB RAM (default)
|
|
429
|
+
# large: 4 vCPU, 8GB RAM
|
|
430
|
+
# xlarge: 8 vCPU, 16GB RAM
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
## Common Issues
|
|
434
|
+
|
|
435
|
+
### Issue: Cache Not Restoring
|
|
436
|
+
**Problem**: Cache misses on every build
|
|
437
|
+
**Solution**: Verify cache key format, ensure checksum file hasn't changed
|
|
438
|
+
|
|
439
|
+
### Issue: Workspace Attach Fails
|
|
440
|
+
**Problem**: Cannot find persisted workspace
|
|
441
|
+
**Solution**: Ensure persist_to_workspace job completed, check paths
|
|
442
|
+
|
|
443
|
+
### Issue: Docker Layer Caching
|
|
444
|
+
**Problem**: Docker builds are slow
|
|
445
|
+
**Solution**: Enable Docker Layer Caching in project settings (paid feature)
|
|
446
|
+
|
|
447
|
+
## Best Practices
|
|
448
|
+
|
|
449
|
+
- Use orbs for common tasks
|
|
450
|
+
- Implement aggressive caching strategies
|
|
451
|
+
- Use workspaces for sharing data between jobs
|
|
452
|
+
- Split tests with parallelism for faster builds
|
|
453
|
+
- Use contexts for environment-specific secrets
|
|
454
|
+
- Define reusable executors
|
|
455
|
+
- Store test results for insights
|
|
456
|
+
|
|
457
|
+
## Related Skills
|
|
458
|
+
|
|
459
|
+
- github-actions (`github-actions`) - GitHub CI/CD
|
|
460
|
+
- docker-management (`docker-management`) - Container builds
|
|
461
|
+
- aws-ecs-fargate (`aws-ecs-fargate`) - ECS deployments
|
|
462
|
+
|
|
463
|
+
## Limitations
|
|
464
|
+
|
|
465
|
+
- Guidance executes against real environments: confirm target, blast radius, and rollback plan before applying anything.
|
|
466
|
+
- Never deploy to production without explicit approval. Docs-only import: upstream scripts and templates not bundled.
|
|
467
|
+
|
|
468
|
+
### Example
|
|
469
|
+
|
|
470
|
+
```bash
|
|
471
|
+
git status && git diff --stat
|
|
472
|
+
kubectl diff -f manifest.yaml
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
> Adapted from [BagelHole/DevOps-Security-Agent-Skills](https://github.com/BagelHole/DevOps-Security-Agent-Skills) (MIT); frontmatter, When to Use/Limitations, and safety boundaries added for upstream compliance. Docs-only import: helper scripts and templates not bundled.
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cis-benchmarks
|
|
3
|
+
description: Audit and remediate CIS benchmark violations.
|
|
4
|
+
category: security
|
|
5
|
+
risk: critical
|
|
6
|
+
source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
|
|
7
|
+
source_repo: BagelHole/DevOps-Security-Agent-Skills
|
|
8
|
+
source_type: community
|
|
9
|
+
date_added: '2026-09-20'
|
|
10
|
+
license: MIT
|
|
11
|
+
license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
|
|
12
|
+
compatibility: Requires the relevant security tooling (scanners, vault CLIs) and an
|
|
13
|
+
authorized scope for any active assessment. Docs-only; helper scripts and templates
|
|
14
|
+
not bundled.
|
|
15
|
+
metadata:
|
|
16
|
+
author: devops-skills
|
|
17
|
+
version: '1.0'
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# CIS Benchmarks
|
|
21
|
+
|
|
22
|
+
Implement and audit CIS security benchmarks.
|
|
23
|
+
|
|
24
|
+
## When to Use This Skill
|
|
25
|
+
|
|
26
|
+
Use this skill when:
|
|
27
|
+
- Assessing security compliance
|
|
28
|
+
- Implementing security baselines
|
|
29
|
+
- Meeting regulatory requirements
|
|
30
|
+
- Hardening systems to standards
|
|
31
|
+
|
|
32
|
+
## Assessment Tools
|
|
33
|
+
|
|
34
|
+
### OpenSCAP
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# Install
|
|
38
|
+
apt install openscap-scanner scap-security-guide
|
|
39
|
+
|
|
40
|
+
# Run CIS benchmark scan
|
|
41
|
+
oscap xccdf eval \
|
|
42
|
+
--profile xccdf_org.ssgproject.content_profile_cis \
|
|
43
|
+
--results results.xml \
|
|
44
|
+
--report report.html \
|
|
45
|
+
/usr/share/xml/scap/ssg/content/ssg-ubuntu2204-ds.xml
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Lynis
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Install
|
|
52
|
+
apt install lynis
|
|
53
|
+
|
|
54
|
+
# Run audit
|
|
55
|
+
lynis audit system
|
|
56
|
+
|
|
57
|
+
# Generate report
|
|
58
|
+
lynis audit system --report-file /tmp/lynis-report.dat
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### InSpec
|
|
62
|
+
|
|
63
|
+
```ruby
|
|
64
|
+
# cis-profile/controls/ssh.rb
|
|
65
|
+
control 'cis-ssh-1' do
|
|
66
|
+
impact 1.0
|
|
67
|
+
title 'Ensure SSH root login is disabled'
|
|
68
|
+
|
|
69
|
+
describe sshd_config do
|
|
70
|
+
its('PermitRootLogin') { should eq 'no' }
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
control 'cis-ssh-2' do
|
|
75
|
+
impact 0.7
|
|
76
|
+
title 'Ensure SSH password authentication is disabled'
|
|
77
|
+
|
|
78
|
+
describe sshd_config do
|
|
79
|
+
its('PasswordAuthentication') { should eq 'no' }
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
# Run InSpec
|
|
86
|
+
inspec exec cis-profile -t ssh://user@target
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Kubernetes CIS
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# kube-bench
|
|
93
|
+
docker run --rm -v /etc:/etc:ro -v /var:/var:ro \
|
|
94
|
+
aquasec/kube-bench:latest run --targets node
|
|
95
|
+
|
|
96
|
+
# Check specific sections
|
|
97
|
+
kube-bench run --targets master --check 1.1,1.2
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Remediation Workflow
|
|
101
|
+
|
|
102
|
+
```yaml
|
|
103
|
+
workflow:
|
|
104
|
+
1_scan:
|
|
105
|
+
- Run automated assessment
|
|
106
|
+
- Generate baseline report
|
|
107
|
+
|
|
108
|
+
2_analyze:
|
|
109
|
+
- Review findings
|
|
110
|
+
- Identify false positives
|
|
111
|
+
- Prioritize by risk
|
|
112
|
+
|
|
113
|
+
3_remediate:
|
|
114
|
+
- Apply fixes
|
|
115
|
+
- Document exceptions
|
|
116
|
+
- Verify changes
|
|
117
|
+
|
|
118
|
+
4_validate:
|
|
119
|
+
- Re-run assessment
|
|
120
|
+
- Confirm remediation
|
|
121
|
+
- Generate compliance report
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Best Practices
|
|
125
|
+
|
|
126
|
+
- Baseline before hardening
|
|
127
|
+
- Document exceptions
|
|
128
|
+
- Automate assessments
|
|
129
|
+
- Track compliance over time
|
|
130
|
+
- Regular re-assessment
|
|
131
|
+
- Version control configurations
|
|
132
|
+
|
|
133
|
+
## Related Skills
|
|
134
|
+
|
|
135
|
+
- linux-hardening (`linux-hardening`) - Linux security
|
|
136
|
+
- vulnerability-scanning (`vulnerability-scanning`) - Security scanning
|
|
137
|
+
|
|
138
|
+
## Limitations
|
|
139
|
+
|
|
140
|
+
- Apply guidance only within authorized scope; test destructive steps in non-production first.
|
|
141
|
+
- Docs-only import: upstream scripts and templates not bundled.
|
|
142
|
+
|
|
143
|
+
### Example
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
# Read-only first: inventory before any active step.
|
|
147
|
+
which <tool> && <tool> --help | head -n 20
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
> Adapted from [BagelHole/DevOps-Security-Agent-Skills](https://github.com/BagelHole/DevOps-Security-Agent-Skills) (MIT); frontmatter, When to Use/Limitations, and safety boundaries added for upstream compliance. Docs-only import: helper scripts and templates not bundled.
|