Skip to main content

Command menu

Jump to a page or search the catalog

AI Tools & Scripts

Flask App Safety Check

Check a Flask app before you deploy: debug mode, a hard-coded SECRET_KEY, render_template_string injection, SQL from f-strings, file paths from requests, open CORS, |safe, insecure cookies, CSRF off, open redirects and unsafe uploads.

$5.00

What you get: 1 file · 24.13 KB · ZIP

See purchase options

Product description

debug=True in production gives anyone a Python console on your server. A hard-coded SECRET_KEY lets anyone forge sessions. This skill finds those and ten other Flask mistakes before you deploy, and tells you how to fix each one.

Your agent runs a scanner on your Python files and Jinja templates. It reads Python with Python's own parser, follows values from request.args, request.form, request.json and URL variables through your code, and knows the safe patterns: environment variables, secure_filename, safe_join, url_for, parameterised SQL and number URL converters. It reads .gitignore so secrets in ignored config files are not reported. It never runs your app. It returns BLOCK, REVIEW, or NOT FLAGGED, with the file, line, reason, and a safer approach. Secrets are never printed.

What it checks

BLOCK (fix before shipping)

  • F01: debug mode on (app.run(debug=True), DEBUG = True)

  • F02: a hard-coded SECRET_KEY, JWT key, password, token or API key

  • F03: render_template_string with a template that is not fixed (template injection)

  • F04: SQL built with f-strings, %, .format() or + and run with execute or text()

  • F05: send_file or open with a path from the request

REVIEW (check before release)

  • F11: CORS with credentials and no origin list

  • F12: Markup() on request data, |safe or autoescape off in templates

  • F13: session or remember cookies without Secure or HttpOnly

  • F14: CSRF turned off or views exempted

  • F15: redirect to a URL from the request

  • F16: uploads saved with the user's file name

  • F17: app.run(host='0.0.0.0')

What's included

  • The scanner (Python 3.9+, standard library only)

  • A rules guide with the reason and safer approach for each rule

  • A risky and a safe example Flask app, and the real report the scanner produces on the risky one

Limits

It follows values within one file. Extensions' own settings, your WSGI server, reverse proxy and dependencies are not checked. NOT FLAGGED is not a guarantee.

Contents

One ZIP file with 13 files: SKILL.md, the scanner in scripts/ (3 Python files), references/rules.md (every rule with its reason and safer approach), and examples/ (7 example files plus report.md, the real scanner output on the risky example).

How to use: This is an agent skill: a folder with a SKILL.md file and Python scripts that an AI coding agent such as Claude Code, Cursor, or Codex CLI can run. Unzip it into your agent's skills folder (for Claude Code: ~/.claude/skills/), then ask your agent to check your project. The scripts also run on their own with Python 3.9 or newer, with nothing to install. They read your files only: no network access, and nothing is sent anywhere.

What you get

1 file · 24.13 KB

  • flask-app-safety-check-1.0.1.zipZIP · 24.13 KB

Included in Getly ProGet Pro

LicenseCommercial use allowed
PublishedNov 9, 2026
File size24.13 KB
File formatZIP
Versionv1.0.1

Tags

flaskpythonsecurityjinjawebai agent skill
R
RR HH

Frequently asked questions

Do I get access instantly?

Yes. This is a digital product - you can download it right after checkout, straight from your library.

Can I use it for commercial projects?

Yes. Commercial use is allowed: use it in your own business and in things you sell. You may not resell or redistribute the file itself.

What's your refund policy?

You can request a refund within 30 days. If something isn't right, request it from your order and the Getly team reviews it.

What file formats and sizes will I get?

You'll download 1 file - ZIP - 24.13 KB in total.

Do I get free updates?

Yes - when the seller ships a new version, you can re-download the latest files from your library at no extra cost. Check the changelog for recent updates.

Price

$5.00