BF waf
Configures AWS WAF to filter web traffic: creating web access control lists (web ACLs) on CloudFront, Application Load Balancers, API Gateway, and AppSync; AWS Managed Rules tuned in Count mode; rate-based rules for HTTP floods; IP set and geographic match rules; Bot Control (Common and Targeted); turning bot labels into a confidence signal; stripping spoofed inbound x-amzn-waf-* headers; recovering the real client IP behind a CDN; Fraud Control (account takeover and account creation fraud prevention); and logging and request sampling. Use when the user wants to protect a web application or API from common exploits, bots, credential stuffing, fake-account creation, or HTTP floods at the application layer (layer 7). Routes to the right per-task procedure in references. Do NOT use for L3/L4 DDoS protection (shieldadvanced skill), multi-account WAF rollout (firewallmanager skill), CloudFront configuration (cloudfront skill), or Route 53 health checks or records (route53 skill).
Configures AWS WAF to filter web traffic: creating web access control lists (web ACLs) on CloudFront, Application Load Balancers, API Gateway, and AppSync…
As a process F 49/100 · Will not run — References files that are not bundled: references/creating-a-web-acl-and-associating-it-with-a-resource.md, references/setting-up-logging-and-request-sampling.md, references/adding-managed-rules-and-tuning-with-count-mode.md
How to improve
- The text references files that are not there: add them or drop the references.
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 0
✓ No critical or high findings
Files scanned: 1. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
- warning
missing-refreference to a missing file: references/creating-a-web-acl-and-associating-it-with-a-resource.md - warning
missing-refreference to a missing file: references/setting-up-logging-and-request-sampling.md - warning
missing-refreference to a missing file: references/adding-managed-rules-and-tuning-with-count-mode.md - warning
missing-refreference to a missing file: references/adding-rate-based-rules.md - warning
missing-refreference to a missing file: references/using-ip-sets-and-geographic-match-rules.md - warning
missing-refreference to a missing file: references/protecting-against-bots-with-bot-control.md - warning
missing-refreference to a missing file: references/turning-bot-control-labels-into-a-confidence-signal.md - warning
missing-refreference to a missing file: references/forwarding-signals-with-dynamic-label-interpolation.md - warning
missing-refreference to a missing file: references/adaptive-mitigation-playbook-for-forwarded-signals.md - warning
missing-refreference to a missing file: references/stripping-inbound-waf-headers-before-trusting-them.md - warning
missing-refreference to a missing file: references/recovering-the-real-client-ip-behind-a-cdn.md - warning
missing-refreference to a missing file: references/protecting-logins-and-signups-with-fraud-control.md - warning
missing-refreference to a missing file: references/seeing-and-managing-ai-crawler-traffic.md
Process rating: all ten parameters 49/100
- 0Tools and files. 13 referenced file(s) missing: references/creating-a-web-acl-and-associating-it-with-a-resource.md, references/setting-up-logging-and-request-sampling.md, references/adding-managed-rules-and-tuning-with-count-mode.md
- 0Result and completion. Does not say what the result is
- 0Inputs and preconditions. Does not say what the process needs to start
- 30Running it twice. 7 mutating operations with no state check
- 50Failures and branches. 0 branches, has a failure section
- 100Steps. 16 steps
- 100When it triggers. States when to use and when not to
- 100Consistency. Name and required fields are in place
- 100Execution cost. Instruction body is 1946 tokens
- 100Progress reporting. Reports progress
- medium Safety rules and hard prohibitions inside a skill: they belong in the system prompt, here they protect nothing
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +5Description has no quoted example phrases that should trigger the skill
- +3Description length 989: 120–800 characters recommended
- +3Output format is not stated: the model decides each time
- +1No license
- +2Single-language instructions
- +4Description says when NOT to use the skill
- +4Structure: 6 headings
- +3Step-by-step instructions: 16 items
- +4Has examples (0 code blocks)
Quality base 70; lint remarks subtract, signals add up to 100. Result: 73.