Skip to main content

GenerateLinterConfig - 代码检查规则生成工具

Project description

en zh-cn

gen-linter-config

A LLM-based linter configuration generate tool .

How to use

  1. install:
pip install gen-linter-config
  1. Configuring LLM: This project uses litellm to call large model in a unified format, so please make sure that you have configured your key as an environment variable and have sufficient token resources before using it.

  2. Usage Example:

    gen-linter-config -t checkstyle --input "No more than 5 function parameters"
    gen-linter-config -t checkstyle --input rule.txt --out output.json
    gen-linter-config -t checkstyle --input "Wrap the code block in braces" --format json
    gen-linter-config --tool Cppcheck --model dashscope/qwen3-max --input "It is forbidden to use malloc functions that may return null pointers without checking."
    # Cppcheck does not apply to the attribute name system, so it will not actually return the content containing the attribute name.
    

Configure key as a system-level environment variable

Windows:Through the system property settings. Find system-properties, find advanced system settings-environment variable, and then create a new user variable with the variable named OPENAI_API_KEY and the value of the key in the user environment variable above.

Linux/macos:Set environment variables in the shell configuration file. Open the terminal and execute the instructions according to different shell:

# Bash
nano ~/.bashrc
# Zsh
nano ~/.zshrc
# Other shell may need to consult relevant documents.

Add in the configuration file:

export OPENAI_API_KEY=[Your OpenAI API key]

Then save and exit. Make the changes take effect:

# Bash
source ~/.bashrc
# Zsh
source ~/.zshrc
# 其它的shell可能需要查阅相关文档确定具体指令。          

Parameter Introduction

Parameter introduce must default
-h, --help show help message and exit n -
--tool, -t Specify the code checking tool y -
--input, -i File path or rule text y -
--model, -m Specify the model to use n deepseek-reasoner
--out, -o Output file path n -
--examples, -e Sample text n -
--version, -v show program's version number and exit n -

If you don't specify an output file, the output will directly printed in the console.

List of supported tools

Tool Y/N
Checkstyle Y
ESLint Y
Biome Y
ClangTidy Y
CppCheck Y
Flake8 Y
PMD Y
Pylint Y
Reek Y
RuboCop Y
Ruff Y

Among them, Checkstyle and ESLint support a relatively perfect generation mechanism, while other tools do not. The configuration generation of more tools is still under development.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gen_linter_config-1.1.0.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gen_linter_config-1.1.0-py3-none-any.whl (3.8 MB view details)

Uploaded Python 3

File details

Details for the file gen_linter_config-1.1.0.tar.gz.

File metadata

  • Download URL: gen_linter_config-1.1.0.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for gen_linter_config-1.1.0.tar.gz
Algorithm Hash digest
SHA256 aad0b518b0e7e2daf70fccc68a59a64872305daf9a4be8231deb05d37c63e0e7
MD5 83b78f0ff6fad1ec3ed2490de2a0098b
BLAKE2b-256 9b35388eb2ea9baf637fb76c44392542ff4f8b53ba951f66f2a9cceaae69588b

See more details on using hashes here.

File details

Details for the file gen_linter_config-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for gen_linter_config-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 16c8e9fc64053b27c21c956fcbd9165a40dc2fde3d90b8539fb31aeb0b8df91b
MD5 82be4446d0c503873a11caef9d5e54db
BLAKE2b-256 6213d261e91323c4b711e6f786066b05771f3a299ded1b655cc6954a129ffdf6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page