SECOPS
Route GitLab MRs to security labels by changed-file sensitivity
When a GitLab merge request opens or updates, classify its changed files against a sensitivity ruleset and apply the right security label.
How it runs
The automated pipeline, trigger to output.
- TriggerGitLab MR opened or updatedGitLab
- ActionFetch MR changed-file pathsGitLab
- LogicMatch paths to sensitivity tier (highest wins)
- ActionApply canonical sec:: label to MRGitLab
- LogicBranch: critical tier only
- OutputPost critical-path alert to security channelSlack
What it does
Every time a merge request is opened or pushed in GitLab, this workflow reads the diff's file list and matches each path against a sensitivity ruleset (auth, crypto, IAM policy, payment, infra-as-code). It then applies a single canonical security label — `sec::critical`, `sec::review`, or `sec::routine` — so reviewers and dashboards can triage instantly, and pings the security team only when critical paths change.
When to use it
Use it when your team relies on labels to drive review SLAs or merge gates and you want consistent, automatic classification instead of authors self-labeling. Ideal for repos where a small set of directories carries most of the security risk.
How it works
- 1A GitLab MR webhook fires on open or update.
- 2The flow fetches the MR's changed-file paths.
- 3A rule engine maps paths to a sensitivity tier (highest match wins).
- 4The matching `sec::*` label is set on the MR, replacing any prior tier label.
- 5If the tier is critical, a message with the file list and MR link is posted to the security Slack channel.
Set it up
What you configure once, before turning it on.
- 1Connect GitLabRepos, MRs, pipelines, registry.
- 2Connect SlackChannels, DMs, threads, mentions.
- 3Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 4Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 5Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More SecOps workflows
Post-Revocation Verification and Audit Logging
After a key is revoked, it confirms the old credential actually fails, verifies the replacement works.
Page on-call when a WAF rule mass-blocks legitimate traffic
On demand or every few minutes, it detects a single Cloudflare WAF rule suddenly blocking a broad spread of ASNs and paths (a likely false-positive storm).
PII Content Scan on New Dropbox External Share
When a file gets an external Dropbox link, it reads the file content, uses an AI classifier to detect PII or secrets.
Compile a weekly WAF tuning review with trends to Confluence
Every week an agent rolls up Cloudflare WAF block clusters by rule and ASN, compares them to prior weeks for trend direction.
Sensitive Dropbox Link Owner Remediation Loop
When a newly created Dropbox shared link points to a sensitive file, this workflow DMs the file owner, gives them a deadline to justify or revoke it.
GitLab Push Secret Detection to Block and History Purge
On a GitLab push that contains a detected secret, it revokes the exposed credential, opens a tracking issue with git-history purge instructions.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
