circleci — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited circleci (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Build, test, and deploy applications using CircleCI's cloud-native CI/CD platform.
Use this skill when:
Create .circleci/config.yml:
version: 2.1
orbs:
node: circleci/[email protected]
docker: circleci/[email protected]
executors:
default:
docker:
- image: cimg/node:20.10
working_directory: ~/project
jobs:
build:
executor: default
steps:
- checkout
- node/install-packages:
pkg-manager: npm
- run:
name: Build application
command: npm run build
- persist_to_workspace:
root: .
paths:
- dist
test:
executor: default
steps:
- checkout
- node/install-packages:
pkg-manager: npm
- run:
name: Run tests
command: npm test
deploy:
executor: default
steps:
- checkout
- attach_workspace:
at: .
- run:
name: Deploy
command: ./deploy.sh
workflows:
build-test-deploy:
jobs:
- build
- test:
requires:
- build
- deploy:
requires:
- test
filters:
branches:
only: mainexecutors:
node:
docker:
- image: cimg/node:20.10
- image: cimg/postgres:15.0
environment:
POSTGRES_USER: test
POSTGRES_DB: testdb
working_directory: ~/appexecutors:
linux-machine:
machine:
image: ubuntu-2204:current
resource_class: largeexecutors:
macos:
macos:
xcode: "15.0.0"
resource_class: macos.m1.medium.gen1jobs:
build:
steps:
- checkout
- restore_cache:
keys:
- v1-deps-{{ checksum "package-lock.json" }}
- v1-deps-
- run: npm ci
- save_cache:
key: v1-deps-{{ checksum "package-lock.json" }}
paths:
- node_modules- restore_cache:
keys:
- v1-{{ .Branch }}-{{ checksum "package-lock.json" }}
- v1-{{ .Branch }}-
- v1-main-
- v1-jobs:
build:
steps:
- checkout
- run: npm run build
- persist_to_workspace:
root: .
paths:
- dist
- node_modules
deploy:
steps:
- attach_workspace:
at: ~/project
- run: ./deploy.shjobs:
test:
parallelism: 4
steps:
- checkout
- run:
name: Run tests
command: |
TESTFILES=$(circleci tests glob "test/**/*.test.js" | circleci tests split --split-by=timings)
npm test -- $TESTFILES
- store_test_results:
path: test-resultsworkflows:
pipeline:
jobs:
- build
- test:
requires:
- build
- deploy:
requires:
- testworkflows:
pipeline:
jobs:
- build
- test-unit:
requires:
- build
- test-integration:
requires:
- build
- deploy:
requires:
- test-unit
- test-integrationworkflows:
deploy-prod:
jobs:
- build
- test
- hold:
type: approval
requires:
- test
- deploy-production:
requires:
- holdworkflows:
nightly:
triggers:
- schedule:
cron: "0 2 * * *"
filters:
branches:
only:
- main
jobs:
- build
- testworkflows:
build-deploy:
jobs:
- build:
filters:
branches:
only:
- main
- /feature-.*/
- deploy:
filters:
branches:
only: main
tags:
only: /^v.*/version: 2.1
orbs:
aws-cli: circleci/[email protected]
kubernetes: circleci/[email protected]
jobs:
deploy:
executor: aws-cli/default
steps:
- aws-cli/setup:
aws_access_key_id: AWS_ACCESS_KEY_ID
aws_secret_access_key: AWS_SECRET_ACCESS_KEY
- kubernetes/install-kubectl
- run: kubectl apply -f k8s/orbs:
node: circleci/[email protected] # Node.js
docker: circleci/[email protected] # Docker builds
aws-cli: circleci/[email protected] # AWS CLI
aws-ecr: circleci/[email protected] # ECR push
aws-ecs: circleci/[email protected] # ECS deploy
gcp-cli: circleci/[email protected] # GCP CLI
kubernetes: circleci/[email protected] # K8s deploy
slack: circleci/[email protected] # Notificationsversion: 2.1
orbs:
docker: circleci/[email protected]
jobs:
build-and-push:
executor: docker/docker
steps:
- setup_remote_docker:
version: 20.10.24
- checkout
- docker/check
- docker/build:
image: myorg/myapp
tag: $CIRCLE_SHA1
- docker/push:
image: myorg/myapp
tag: $CIRCLE_SHA1Set in CircleCI Project Settings > Environment Variables
workflows:
deploy:
jobs:
- deploy-staging:
context: staging-secrets
- deploy-production:
context: production-secretsjobs:
deploy:
steps:
- run:
name: Deploy
command: |
aws s3 sync dist/ s3://$S3_BUCKET
environment:
AWS_DEFAULT_REGION: us-east-1jobs:
test:
steps:
- run:
name: Run tests
command: npm test -- --coverage
- store_test_results:
path: test-results
- store_artifacts:
path: coverage
destination: coverage-reportjobs:
build:
docker:
- image: cimg/node:20.10
resource_class: large # 4 vCPU, 8GB RAM
steps:
- checkout
- run: npm run build
# Available classes:
# small: 1 vCPU, 2GB RAM
# medium: 2 vCPU, 4GB RAM (default)
# large: 4 vCPU, 8GB RAM
# xlarge: 8 vCPU, 16GB RAMProblem: Cache misses on every build Solution: Verify cache key format, ensure checksum file hasn't changed
Problem: Cannot find persisted workspace Solution: Ensure persist_to_workspace job completed, check paths
Problem: Docker builds are slow Solution: Enable Docker Layer Caching in project settings (paid feature)
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.