TECHDEV Β· Flagship Β· Open-source tool

devsecops-os

An open-source, vendor-neutral operating layer for DevSecOps and AI SecOps in regulated organisations. It gives platform and security teams policy-as-code gates and automated audit-evidence collection that run on the CI they already have β€” so a pipeline does not just block faults, it proves that it did.

Phase 1 β€” verified on real GitHub Actions Β· Policy pack: 14 policies Β· 10 CI gates Β· MIT

Who hurts, and what this does about it

CISOs and platform teams in regulated organisations hurt in three places: (1) every team assembles its security pipeline differently, so there is no standard path that reaches the controls just by being followed; (2) compliance policy lives in Word/PDF documents and is translated by hand into configuration at audit time, while evidence is gathered manually from everywhere; (3) scanner results from commercial vendors (Harness, GitHub Advanced Security, Snyk…) live inside each vendor's closed system β€” the cross-cutting governance and evidence layer for a specific regulatory framework still has to be built in-house.

This system builds exactly that missing part: policy-as-code that lives in the organisation's own repositories (no third-party server holds the data), CI gates that block at calibrated points, and audit evidence generated automatically from the pipeline runs themselves β€” the pipeline does not only block faults, it proves that it did.

What it does

Design principles: vendor-neutral by structure (scanners and connectors speak open formats β€” SARIF, CycloneDX/SPDX, Sigstore, SLSA β€” so swapping a scanning tool must not break policy or evidence); identity-first (no long-lived static credentials in the pipeline; people through SSO/OIDC, workloads through OIDC federation for short-lived tokens, artefacts signed with Cosign and SLSA provenance); evidence as an automatic by-product of operations, not extra work at audit time; no data leaves the user's infrastructure (every component runs in the organisation's own CI, runners and clusters).

Control framework mappings

The policy pack ships pre-mapped to the control frameworks below. These are reference mappings to support audit preparation β€” not a compliance certification.

FrameworkPolicy pack
ISO 27001:2022iso-27001-2022
NIST CSF 2.0 / SSDFnist-csf-ssdf
PCI DSS 4.0pci-dss-4
APRA CPS 234apra-cps-234
APRA CPS 230apra-cps-230
SOC 2soc-2

Do not use this repository to claim compliance with any control framework: the mappings are reference mappings for audit preparation, not a compliance certification.

Integrations

devsecops-os integrates with the platforms an organisation already runs β€” GitHub, GitLab, Harness β€” instead of replacing them, and it is not one more scanner. Phase 1 implements GitHub Actions; the GitLab and Jenkins/on-prem integration points are designed, not yet implemented.

Repository layout: docs/ (reference architecture and guides, including golden paths); examples/payments-sample/ (sample workload in two variants, clean / planted faults, for verifying the gates); examples/checkout-sample/ (second service, built from the golden path); policies/ (policy packs mapped to control frameworks); gates/ (the 10 CI security gates); evidence/ (evidence collector and bundle); templates/ (golden-path service templates); release/ (release dossier, dogfood record, demo, landing content).

Try it now (locally β€” the same scripts CI calls)

# 1) Fetch the pinned toolset (versions + SHA-256 pinned)
bash gates/local/fetch_tools.sh            # TOOLS_DIR default: ~/workspace/tools

# 2) Run the full verification on both sample-workload variants
bash gates/verification/run_verification.sh all
#    -> result matrix: gates/verification/results.md

# 3) Collect + verify one run's evidence bundle (one verify command)
python3 evidence/bundle_tool.py collect evidence/output/local-clean \
    --run-id local-clean --out-dir evidence/bundles/local-clean

python3 evidence/verify_bundle.py evidence/bundles/local-clean

Commands copied exactly from the devsecops-os README (β€œTry it now”). No package-manager install command is shown because the README gives none: it is run from a checkout of the repository with the local scripts above. Expected result (verified at milestones M3–M5): the clean variant passes all 10 gates; the planted variant is blocked at exactly gate 1 (secret), gate 4 (IaC β€” security group open to the Internet), gate 5 (end-of-life base image) and gate 8 (dependency in CISA KEV), and is not blocked at any other gate.

Sample workload: examples/payments-sample/ is a minimal payments application (Python/Starlette API backend, static frontend, Terraform for AWS, Dockerfile, Kubernetes manifests) in two parallel variants: clean/ (correctly configured; expected to pass every gate) and planted/ (exactly 4 deliberate faults planted β€” fake secret, dependency carrying CVE-2026-48710 from CISA KEV, security group open to 0.0.0.0/0, old base image frozen since 2022). Each fault and its expected gate are listed in examples/payments-sample/planted/PLANTED.md.

Measured numbers (README, real GitHub Actions)

Full release dossier: release/RELEASE-DOSSIER.md in the repository.

What this is NOT β€” and where rivals beat us

Source + README on GitHub β†’ Β· Report an issue β†’ Β· ask@techdev.fun

Limits

License

MIT β€” see LICENSE in the repository.

Related tools

More open-source tools from TECHDEV: sessguard, runverdict, gheist-guard, vetgate, context-diet, ci-failure-detective, agent-seatbelt, env-doctor, skill-audit, logtrim, testguard, breakcheck, keymap, memgraph, ggufit, leaseguard, factfence, jsonfold

Have a say

Vote for this tool, suggest a feature, or discuss it with other operators on the community board.