SECOPS

Auto-draft a WAF rule-tuning proposal in Linear with evidence

Daily, an agent analyzes Cloudflare WAF block clusters, separates likely false positives from real attacks.

CategorySecOps
Enginepaperclip
Difficultyadvanced
Triggerschedule
Steps5
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule
  • ActionPull 24h of Cloudflare WAF blocksCloudflareCloudflare
  • LogicAgent clusters and classifies FP vs attack
  • LogicDraft tuning proposal with confidence
  • OutputOpen Linear issue with proposal and evidenceLinearLinear

What it does

Once a day an agent reviews the last 24 hours of Cloudflare WAF blocks clustered by rule and ASN, judges which clusters look like false positives (legitimate traffic caught by an overbroad rule) versus genuine attacks, and drafts a rule-tuning proposal. It files that proposal as a Linear issue: what to change, why, the evidence sample, and a confidence score — ready for a human to approve.

When to use it

Use it to keep WAF rules from drifting into either noise or laxity. It converts raw block telemetry into a reviewable engineering task instead of leaving tuning to whenever someone remembers.

How it works

  1. 1A daily scheduled trigger starts the run.
  2. 2Cloudflare returns the day's blocked events with rule, ASN, and request context.
  3. 3The agent clusters and classifies each group as false positive, attack, or ambiguous.
  4. 4It drafts a tuning recommendation per cluster with rationale and confidence.
  5. 5A Linear issue is created with the proposal, evidence, and suggested rule edits.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect LinearIssues, projects, cycles, triage.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.