Code scanners look at what you ship. Aribot also looks at how you ship it: which pipelines exist, what rules they must pass, what goes into each build and who is allowed to run them.
Connectors discover the pipelines in your source control. An admin approves each one into scope or rejects it, so nothing is scanned by accident and nothing is quietly left out.
Set gate policies such as blocking on critical findings or requiring an SBOM. Each scan records its own verdict against them, and a check that was not evaluated says so and never reads as a pass.
Each pipeline scan produces a software bill of materials with components, versions and licences, the vulnerabilities found in them, and a risk assessment with its main contributing factors.
Access to scan an approved pipeline is granted per member and per pipeline, with a role. You can see who holds access, who granted it and when.
Add the Aribot GitHub Action and `aribot check` runs on every pull request. It posts one summary comment on the PR and fails the check when there are unverified or critical threats, at the severity you choose.
Most security programmes put their effort into the code: scanners on the repository, reviews on the pull request, tests before release. That work matters. But the code does not deploy itself. A build server, a set of pipeline definitions, a handful of service accounts and hundreds of third-party packages sit between a developer's commit and your customers. Each of those is trusted to do exactly what it should, and each is a place where something else can be slipped in.
The questions a board, a regulator or a customer's security team ask are simple to state and hard to answer. They want the number of pipelines that can reach production, and which of them are checked against which rules. They want to know whether last Tuesday's build passed those rules, which open-source components went into it and whether any carry a known critical vulnerability. They also want to know who may run security scans on the payments pipeline, and who granted that right.
In many organisations the honest answer is a mix of tribal knowledge and spreadsheets. Pipelines get created by teams who have since moved on. A gate that was meant to block on critical findings was switched off during an incident and never switched back. A dashboard shows green because a check did not run, and a check that did not run looks the same as one that passed.
Pipeline security in Aribot is built around closing those gaps with records you can show: every pipeline your connectors can see, an explicit decision on whether it is in scope, the rules each build must meet, a verdict per run that never pretends, a bill of materials per scan with a risk score you can explain, and a list of who may run what. It sits next to code security, and both report on the same pull request. See code review for the other half.
One place that says how many pipelines reach production, which rules they enforce and whether recent releases met them, in terms you can put in front of a board or an insurer without caveats.
Gates that stop the few builds that should not ship and let the rest through, connectors that find pipelines without a project to inventory them, and access that is granted one pipeline at a time.
Each run's verdict against each gate, an SBOM per scan and a list of access grants with who granted them and when. The evidence for change management and secure development questions, kept as it happens.
Model clients, vector stores and agent frameworks arrive as dependencies like anything else. The bill of materials shows them with versions, licences and known vulnerabilities, so AI work does not become a blind spot.
A gate policy is a rule your company sets for its pipelines: block the build if there is any critical finding, require a bill of materials, stop when high-severity findings pass a threshold. Having the rule written down says nothing about whether any build met it. That is why Aribot shows two different things on two different parts of the screen.
The first is the list of configured gate policies, by name and type. The second is each scan's verdict: for a chosen run, which checks passed, which failed, the value measured and the threshold it was held to. When a check was not evaluated, the verdict says exactly that. When nothing at all was evaluated on a run, the screen says no verdict was recorded. Neither is ever drawn as a green tick.
This sounds like a small design choice. In practice it is the difference between a dashboard you can trust in an audit and one you have to explain. It also keeps teams honest with themselves: a pipeline whose gates never ran shows up as a gap to fix. Pipeline gate results sit alongside your other frameworks in the compliance view, so the people who report on controls see them in the same place.
Every pipeline scan produces a software bill of materials: the components in the build, their versions and types, the licences they declare, and the vulnerabilities found in them. Most of the risk in a modern application is not in the packages a team chose but in the packages those packages chose. The bill of materials shows both, and counts vulnerabilities per component so you can see where they cluster.
Next to it sits a risk assessment for the scan: a score from 0 to 100 where higher is worse, a risk level, a breakdown by dimension and the top contributing factors. The factors are the useful part. “High risk” on its own starts a meeting; “a critical vulnerability in a transitive image library, and a component with no declared licence” starts a fix.
Aribot does not guess when it cannot read. If a scan's bill of materials could not be read, the screen says so and shows no estimate. If a build has no components, it shows “no components”, which is a different statement from “no risk”. A gate can require that a bill of materials exists, so a pipeline that stops producing one is stopped.
Security scans read source code, configuration and sometimes secrets in transit. The right to run them is worth controlling, and the right to see their results even more so. In Aribot, access to an approved pipeline is granted per member and per pipeline, in one of three roles: admin, scanner or viewer.
The grants screen is a plain table: member, pipeline, role, who granted it and when. It is the table an access review needs. Only members with a grant for that pipeline can scan it. Company owners can reach every pipeline and are not listed, and the screen states this so nobody wonders why a name is missing.
The flow starts earlier, with discovery. Connectors find pipelines in your source control. Each arrives as available or pending review, and an admin approves it into scope or rejects it. Only approved pipelines can be granted and scanned, so a repository nobody has looked at cannot become a scanning target by accident.
Configured once from the connector settings screen, as a GitHub App or OAuth app per provider. Secrets are stored encrypted and never shown back to anyone, including admins. A provider becomes connectable as soon as it is configured.
Self-hosted Jenkins instances and Google Cloud Build are connected per instance from the connect dialog, because each one has its own address and credentials. They then appear with your other pipelines.
A GitHub Actions workflow you add to a repository. It runs `aribot check` on each pull request, posts one comment that is updated on every push, and fails the check at the severity you choose. It needs permission to write pull-request comments, and no write access to code.
Larchmere Freight is invented for this page. It runs a customer portal, a booking API and a payments service, built by six product teams across GitLab and a legacy Jenkins server. Its new head of platform has been asked by the CISO for a single answer to the question every enterprise customer now asks in procurement: how do you know what you ship?
The platform team configures the GitLab connector and connects the Jenkins instance. Aribot lists forty-one pipelines. Nobody had a list before. Twenty-six are approved into scope, nine are rejected as archived experiments, and six are left pending until their owners confirm whether they still deploy anything.
Engineers do not all get access to everything. The head of platform grants each team's security champion the scanner role on that team's pipelines and gives engineering managers the viewer role. The CISO's team keeps admin. The grants table becomes the access review evidence for the next audit.
Three gate policies go live: block on any critical finding, require a bill of materials, and stop when high findings exceed a threshold. The first week's verdicts are sobering. Most builds pass. Two fail on high findings. Four show “not evaluated” because their jobs skip the scan step on a branch naming rule nobody remembered writing.
The payments service's bill of materials shows a transitive image library with a critical vulnerability, pulled in by a PDF receipt generator. The risk score names it as the top factor. The team pins a fixed version, the next scan's risk score falls, and the gate that had blocked the release now passes it.
The booking API team adds the GitHub Action to a repository that mirrors to GitHub for an open partner integration. Each pull request now gets one Aribot comment. A change that adds an unauthenticated export endpoint fails the check because a modelled threat is no longer verified as mitigated. The developer fixes it before review; the comment updates to a pass.
When the next enterprise customer asks how Larchmere knows what it ships, the answer is a short report: pipelines in scope and why, gate policies and the recent verdicts, the bill of materials for the current release, and who may run scans. The six pending pipelines have been resolved. The four that were never evaluated now are.
Counts, names and timings in this walk-through are illustrative and do not describe any real organisation.
Pipeline security and code security answer different questions, and it helps to be clear about which is which. Code security looks inside the change: insecure patterns, secrets, vulnerable dependencies, and whether the threats in your threat model are mitigated by the code. Pipeline security looks at the road the change travels: whether the pipeline is in scope, whether the build met its gates, what the artefact contains and who could trigger it.
They meet on the pull request. The code review comment tells the developer what the change does to security, line by line. The pipeline gate decides whether the change may proceed. Because both read from the same threat model and the same scan, the developer is not given two contradicting answers.
Is this pipeline approved? Did this build meet its gates, or were they not evaluated? What is in the artefact? Who may scan it?
Which lines introduce a risk? Which modelled threats does this change touch, and are they still mitigated? Which ticket tracks the fix?
Pipeline security produces the kind of evidence software supply chain frameworks ask for. The table below shows where it helps. It describes evidence you can produce, not a certification: your auditor or assessor still makes that call.
A free online assessment that shows where you stand against the EU AI Act, the NIST AI RMF and related frameworks. Questions about how AI features are built and released point straight at the pipeline.
Threat models, code security, code review and pipeline security in one product, so a threat named in the design is checked in the code and gated in the pipeline.
Assessments against published frameworks. Assessment templates by Aristiun. Pipeline gate verdicts and bills of materials become evidence for answers on secure development and change management.
Code security asks whether the code you wrote has weaknesses. Pipeline security asks whether the system that builds and ships that code can be trusted: which pipelines exist, which rules each build must meet, what third-party components went into the artefact and who is allowed to run scans against it. Aribot covers both, and the two meet on the pull request, where the code review comment and the pipeline gate report on the same change.
Connectors are configured for GitHub (as a GitHub App), Azure DevOps, GitLab and Bitbucket from one settings screen, with credentials stored encrypted and never shown back. Self-hosted Jenkins and Google Cloud Build are connected per instance from the connect dialog. If you run something else, book a call and we will tell you plainly what is and is not covered today.
No. Discovered pipelines arrive as a list waiting for a decision. An admin approves each one into scope or rejects it. Approval or rejection acts on the record only; nothing is scanned until a pipeline is approved and someone with access runs a scan.
The verdict says “not evaluated” and the run shows “no verdict recorded”. It is never counted as a pass and never quietly counted as a fail either. The point is that an auditor, or you, can tell the difference between a build that met the rule and a build nobody measured.
Only if something was measured. If a scan analysed zero files, or threat verification was expected and returned nothing, `aribot check` fails regardless of the severity setting. Zero findings from zero files is not evidence of safety.
Anyone you grant access to, per pipeline, in a role: admin, scanner or viewer. Company owners have access to every pipeline implicitly and are not listed. The grants screen shows each member, pipeline, role, who granted it and when, so an access review takes minutes and needs no spreadsheet hunt.
Each pipeline scan carries a risk score from 0 to 100, where a higher number is worse, with a risk level and the main factors that contributed to it. A score of 0 is the best possible value. An empty bill of materials reads as “no components”. It never reads as a clean supply chain.
For discovery, gates, SBOM and access you connect your source control and approve pipelines; your pipeline definitions do not change. For the pull-request check you add one workflow file and two secrets to the repository. The check needs permission to write pull-request comments and no write access to code.
It gives you evidence for several of their practices: an inventory of pipelines in scope, recorded gate verdicts per build, a bill of materials per scan and a list of who may run what. It does not by itself award a SLSA level or certify SSDF conformance; it makes the evidence for those conversations easy to find and hard to argue with.
Start free with Aribot and add the pull-request check to a repository, or book a call to plan pipeline gates across your estate.