Skip to main content

Assistant for reviewing your code

Project description

CodeSpector

CodeSpector is a Python package designed to review code changes for quality and security issues using AI chat agents. It supports different chat agents like Codestral and ChatGPT.

Features

  • Automated code review using AI chat agents.
  • Supports multiple chat agents and models.
  • Generates detailed review reports in markdown format.
  • Configurable via environment variables and command-line options.

Installation

To install the package, use the following command:

pip install codespector
uv add codespector

Usage

Command-Line Interface

You can use the codespector command to start a code review. Below are the available options:

Usage: codespector [OPTIONS]

Options:
  --system-content TEXT       Content which used in system field for agent
                              [default: Ты код ревьювер. Отвечай на русском языке.]
  --output-dir TEXT           Select the output directory [default: codespector]
  -b, --compare-branch TEXT   Select the branch to compare the current one with
                              [default: develop]
  --chat-agent [codestral|chatgpt]
                              Choose the chat agent to use [default: codestral]
  --chat-model TEXT           Choose the chat model to use
  --chat-token TEXT           Chat agent token
  --mode [local]              Choose the mode of the application [default: local]
  --version                   Show the version and exit.
  --help                      Show this message and exit.

Example

To run a code review, use the following command:

codespector --chat-token YOUR_CHAT_TOKEN --chat-agent codestral --compare-branch develop

Configuration

You can also configure CodeSpector using environment variables. Create a .env file in the root directory of your project with the following content:

CODESPECTOR_SYSTEM_CONTENT=Ты код ревьювер. Отвечай на русском языке.
CODESPECTOR_OUTPUT_DIR=codespector
CODESPECTOR_CHAT_AGENT=codestral
CODESPECTOR_CHAT_MODEL=codestral-latest
CODESPECTOR_CHAT_TOKEN=YOUR_CHAT_TOKEN

Makefile Commands

  • lint: Run linting and formatting checks.
  • format: Format the code.
  • fix: Fix linting issues and format the code.
  • test: Run the tests.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

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

codespector-0.1.2.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

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

codespector-0.1.2-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file codespector-0.1.2.tar.gz.

File metadata

  • Download URL: codespector-0.1.2.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for codespector-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d49dc0af72befd30d51b6e8632ab7eeb57e27bf3f8f400640db63e10afc5c782
MD5 766e3d01f888d18547142f972328f000
BLAKE2b-256 71f4713b55cb395120f0eb78872078a47ce9e0ad52976e314f52a36fcad31986

See more details on using hashes here.

Provenance

The following attestation bundles were made for codespector-0.1.2.tar.gz:

Publisher: build-publish.yml on Vladimir-Titov/codespector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codespector-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: codespector-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for codespector-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e183ad76ec810ad4c5961d1979bace94e1b3f28e7ba3df3226eec78dec1eaecc
MD5 a231efa4969b5ed880d0bd3269a4d928
BLAKE2b-256 cc9dccc26fc9117d0e69e2231dc9a34aac164dfd4f7d8fc6487806e063da9473

See more details on using hashes here.

Provenance

The following attestation bundles were made for codespector-0.1.2-py3-none-any.whl:

Publisher: build-publish.yml on Vladimir-Titov/codespector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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