Use Cases

Practical Python workflows for AI code review, CI hardening, and dead-code cleanup

Use these guides when the problem is concrete: secure GitHub Actions, catch AI-generated mistakes, or clean dead code without drowning in false positives.

Maintainer proof

Merged cleanup PRs into Black, networkx, mitmproxy, pypdf, and Flagsmith.

Benchmark

98.1% recall on 9 Python repos, with 220 false positives vs Vulture's 644.

Verification

35/35 LLM verification accuracy on pip-tools, tox, and mesa.

How to use these guides

Start with one workflow you already run

Pick the guide that matches the job in front of you, run Skylos locally, and only wire it into CI after you trust the results.

Install the CLI with pip install skylos
Run skylos . -a on a real repo
Use skylos cicd init when you are ready to gate PRs
Review Judge scorecards for public-repo examples
cisecurity

How to Secure GitHub Actions for Python Repos

Secure GitHub Actions for Python by pinning third-party actions, locking down GITHUB_TOKEN permissions, using OIDC, and scanning every pull request for Python security issues.

Read guide
securityai code

How to Secure an MCP Server Before You Trust It With Your Code

MCP makes AI coding agents far more useful, but it also expands what they can read, call, and exfiltrate. Use this checklist to harden MCP servers before they touch your repo, shell, or secrets.

Read guide
securityai code

How to Review Claude Code Output for Python Security Regressions

Claude Code's permission model is a strong start, but approved edits can still remove auth checks, relax validation, or introduce insecure shortcuts. This workflow adds static verification before those changes merge.

Read guide
securityai code

How to Use Skylos as a Cursor Security Scanner for Python

Cursor can write code quickly, call MCP tools, and run with approvals or auto-run. This workflow adds local scanning, pre-commit checks, and PR gating so speed does not turn into silent risk.

Read guide
securityai code

How to Catch Removed Auth Checks and Security Regressions in AI-Generated PRs

The most dangerous AI-generated vulnerability is often not new code. It is a deleted decorator, dropped validation check, or missing middleware in a clean-looking refactor. Diff-aware scanning is how you catch it.

Read guide
securityai code

How to Scan LLM Applications for Prompt Injection, Data Leaks, and Missing Guardrails

If your product calls LLMs, the risky part is not just the prompt. It is the surrounding system: tools, retrieval, output handling, tenant boundaries, and cost controls. This guide shows how to scan that surface.

Read guide
securityai code

How to Review GitHub Copilot Output for Python Security and Regressions

GitHub Copilot can now review pull requests and follow repository guidelines, but you still need static analysis to catch dead code, insecure patterns, and removed protections in AI-generated Python changes.

Read guide
ai codesecurity

How to Verify AI-Generated Python Code and Catch Hallucinated Imports

Learn how to verify AI-generated Python code before merge. Catch hallucinated imports, phantom calls, hardcoded secrets, and disabled security controls before they reach production.

Read guide
dead codepython

How to Detect Dead Code in Python

Dead code accumulates silently in every Python project. Here's how to find unused functions, unreachable code, and phantom imports — especially in codebases that use AI coding tools.

Read guide
cisecurity

Python Security Scanner for GitHub Actions: Scan Every Pull Request

Add a Python security scanner to GitHub Actions and scan every pull request. Catch dead code, hardcoded secrets, SQL injection, and AI-generated code problems before merge.

Read guide
Next step

Turn the guide into a real scan

The guide is useful only if it maps to a repo you already own. Start with a local scan, then decide whether this workflow belongs in CI.