$npx skillfedfor your agent

strict-kwargs

Enforce using keyword arguments where possible.

With conditionsPyPI Quality AssuranceReleased Jul 2026152.3K downloads / moMITPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — strict_kwargs-2026.7.24-py3-none-macosx_11_0_arm64.whl · strict_kwargs-2026.7.24-py3-none-manylinux_2_39_x86_64.whl · strict_kwargs-2026.7.24-py3-none-win_amd64.whl
v2026.7.24 · released 2026-07-24 · Python >=3.11 · 1 runtime deps: ty

Yes, if you use ty for type checking or prefer a standalone linter without plugins. The tool is actively maintained, has no known vulnerabilities, and solves a real code-clarity problem with automatic fixes. Medium install friction (platform-specific wheels, Python 3.11+ requirement) is manageable for most projects. Start with a trial run on your codebase using --diff to preview changes.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.11 or later.
  • Implemented in Rust; platform-specific wheels are provided.
  • Medium install friction due to platform-specific wheels (macOS ARM64, manylinux, Windows).

License · maintenance · safety

MIT (permissive) — MIT license permits unrestricted use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

last release 2026-07-24 (21 days) · last repo commit 2026-08-13 · 1 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 152,276 downloads/mo, #10,907 on PyPI

Verify before relying

pip install strict-kwargs

strict-kwargs check .
strict-kwargs check --fix .
  • Whether the Rust implementation affects performance on large codebases compared to pure-Python linters.
  • How well the tool integrates with existing linting workflows beyond pre-commit.
  • Whether synthesized constructor fixes (dataclass, NamedTuple) are safe by default in all projects.
Same gist for agents: .md · .json

What it is and what it does

strict-kwargs is a standalone linter written in Rust that enforces the use of keyword arguments in Python function calls. It scans Python code and reports violations where functions are called with positional arguments instead of named ones, then optionally rewrites them automatically. The tool is designed to improve code clarity and enable better error messages from type checkers by making argument intent explicit.

It runs as a CLI tool and integrates with pre-commit, pyproject.toml configuration, and supports multiple output formats (Ruff-style diagnostics, JSON, GitHub Actions annotations). The tool depends only on ty for runtime and supports Python 3.11 through 3.14. It includes a caching system, suppression via noqa comments, and configurable exclusions for generated or vendored code.

Use it for

  • Enforce consistent function call style across a codebase to prevent ambiguous positional argument calls.
  • Automatically rewrite existing positional arguments to keyword form during refactoring.
  • Integrate into pre-commit hooks to catch violations before code review.
  • Improve type checker error messages by ensuring all arguments are named.
  • Configure project-wide rules via pyproject.toml to skip specific functions like builtins.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you use ty for type checking or prefer a standalone linter without plugins.

The tool is actively maintained, has no known vulnerabilities, and solves a real code-clarity problem with automatic fixes. Medium install friction (platform-specific wheels, Python 3.11+ requirement) is manageable for most projects. Start with a trial run on your codebase using --diff to preview changes.

Install

strict-kwargs on PyPI

Before you install

Medium install friction due to platform-specific wheels (macOS ARM64, manylinux, Windows). Active maintenance with recent releases; last commit 2026-08-13. Requires Python 3.11 or later.

Requires Python 3.11 or later. Implemented in Rust; platform-specific wheels are provided.

License in practice

MIT license permits unrestricted use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

Quickstart

pip install strict-kwargs

strict-kwargs check .
strict-kwargs check --fix .

Verify before relying

  • Whether the Rust implementation affects performance on large codebases compared to pure-Python linters.
  • How well the tool integrates with existing linting workflows beyond pre-commit.
  • Whether synthesized constructor fixes (dataclass, NamedTuple) are safe by default in all projects.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.11
Install frictionMedium. Platform-specific wheel
Runtime dependencies
1 package
ty
MaintenanceActively maintained 21 days since the last release
Last repo commit
First released
Downloads152,276 / month, #10,907 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaEnvironment :: ConsoleLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: RustTopic :: Software Development :: Quality Assurance

Evidence: strict_kwargs-2026.7.24-py3-none-macosx_11_0_arm64.whl; strict_kwargs-2026.7.24-py3-none-manylinux_2_39_x86_64.whl; strict_kwargs-2026.7.24-py3-none-win_amd64.whl

Tags

Capabilities
enforce keyword arguments pythonpositional to keyword arguments linterstrict kwargs clipython function call style checkerautomatic keyword argument rewriterpython code quality linterfunction call argument enforcer
Topics
lintercode-stylerust-cli
PyPI keywords
lintkeyword-argumentstymypy

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “enforce keyword arguments python”

Give your agent the search over MCP, or paste the wish link into any chat.

More Quality Assurance packages

coverage Worth it
PyPI · Testing · released Aug 2026

Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.

Install it if you want to measure test completeness or enforce coverage thresholds in your project.

permissive licensepure Python · 3.10+
335.8Mdownloads / mo
ruff Worth it
PyPI · Python Modules · released Aug 2026

Ruff is a Python linter and code formatter written in Rust that combines linting, formatting, and code fixing into a single tool, replacing Flake8, Black, isort, and related utilities.

MITcompiled wheel · 3.7+
316.1Mdownloads / mo
pexpect With conditions
PyPI · Software Development · released Nov 2023

Pexpect spawns and controls interactive console applications by sending input and matching output patterns, automating tasks that would otherwise require manual interaction.

ISCpure Pythonaging
200.8Mdownloads / mo
black Worth it
PyPI · Python Modules · released May 2026

Black reformats Python source code to a consistent style by parsing entire files and rewriting them according to an opinionated, deterministic set of rules, eliminating manual formatting decisions.

MITpure Python · 3.10+
179.9Mdownloads / mo
pytest-xdist Worth it
PyPI · Utilities · released Jul 2025

pytest-xdist distributes pytest tests across multiple CPU cores or machines to speed up test execution, with the simplest usage being `pytest -n auto` to spawn workers equal to available CPUs.

Install it if your test suite takes long enough that parallelization would save meaningful time.

MITpure Python · 3.9+
177.1Mdownloads / mo
cfn-lint Worth it
PyPI · Quality Assurance · released Aug 2026

Validates AWS CloudFormation templates in YAML or JSON format against resource provider schemas and best practices, checking property values and configuration correctness.

Install it if you work with CloudFormation templates.

MIT-0pure Python
114.9Mdownloads / mo

See also backcall · mypy-strict-kwargs · overloading · wemake-python-styleguide · import-linter · gitlint-core · flake8-noqa · flake8 · ty