SECOPS
Auto-label GitLab MRs that touch secrets and pull in a security reviewer
Scans the diff of each new GitLab MR for credential-like patterns and sensitive file paths, and when it finds them.
How it runs
The automated pipeline, trigger to output.
- TriggerGitLab MR opened or updatedGitLab
- ActionFetch MR diff and scan for secretsGitLab
- LogicBranch on finding above risk threshold
- ActionApply security label, assign reviewer, comment findingsGitLab
- OutputNotify appsec channel in SlackSlack
What it does
Inspects every new merge request's diff for secret-shaped strings (API keys, tokens, private key headers) and edits to sensitive paths like `.env`, IAM policy, or auth config. When it finds a match it applies a `security::appsec` label, assigns the appsec reviewer, and flags the specific findings in a comment so the change can't slip through unlabeled.
When to use it
Use it as a first-pass gate so risky diffs are caught and routed automatically instead of relying on authors to remember to tag security.
How it works
- 1A GitLab webhook fires when an MR is opened or updated.
- 2The flow fetches the MR changes and runs pattern matching for credentials and sensitive file paths.
- 3A branch decides whether any finding crosses the risk threshold.
- 4If so, it applies the security label, assigns the appsec reviewer, and posts a comment listing the matched lines.
- 5A Slack note goes to the appsec channel so the reviewer knows it's incoming and why.
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.
