Git-aware utility for automated program analysis
Project description
[alpha] A Git-aware CLI for running semgrep patterns in the developer and CI workflow.
Installation · Usage · Help & Community
Installation
Requires Python 3.6+ and Docker 19.03+. It runs on macOS and Linux.
In a Git project directory:
$ pip3 install bento-headless
Usage
Upgrading
$ pip3 install --upgrade bento-headless
Command line options
$ bentoh --help
Usage: bentoh [OPTIONS] COMMAND [ARGS]...
Options:
-h, --help Show this message and exit.
--version Show the version and exit.
Commands:
archive Suppress current findings.
check Checks for new findings.
To get help for a specific command, run `bentoh COMMAND --help`
Run custom semgrep
checks on staged diffs
See semgrep Configuration for how to write custom rule files
vi .bento/semgrep.yml
bentoh check
Format output as JSON
bentoh check -f json
Run on file system current state
bentoh check --all
Run on staged diffs in a directory
bentoh check src
Ignore current findings
bentoh archive
Run public semgrep checks on staged diffs
BENTO_REGISTRY=r/r2c.python bentoh check
Run checks from extensions
bentoh check -t gosec -t r2c.registry.latest
Exit codes
bentoh check
may exit with the following exit codes:
0
: Bento ran successfully and found no errors2
: Bento ran successfully and found issues in your code3
: Bento or one of its underlying tools failed to run
Extensions
bentoh
ships with the following extensions:
Extension | Description |
---|---|
bandit | Finds common security issues in Python code |
dlint | A tool for encouraging best coding practices and helping ensure Python code is secure |
eslint | Identifies and reports on patterns in JavaScript and TypeScript |
flake8 | Finds common bugs in Python code |
gosec | Finds security bugs in Go code |
hadolint | Finds bugs in Docker files (requires Docker) |
r2c.boto3 | Checks for the AWS boto3 library in Python |
r2c.flask | Checks for the Python Flask framework |
r2c.jinja | Finds common security issues in Jinja templates |
r2c.registry.latest | Runs checks from r2c's check registry (experimental; requires Docker) |
r2c.requests | Checks for the Python Requests framework |
shellcheck | Finds bugs in shell scripts (requires Docker) |
Help and community
Need help or want to share feedback? We’d love to hear from you!
- Email us at support@r2c.dev
- Join #general in our community Slack
- File an issue or submit a feature request directly on GitHub
We’re constantly shipping new features and improvements.
License and legal
Please refer to the terms and privacy document.
Copyright (c) r2c.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bento-headless-0.11.0.tar.gz
.
File metadata
- Download URL: bento-headless-0.11.0.tar.gz
- Upload date:
- Size: 87.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.3 CPython/3.7.4 Darwin/18.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 872cbff5edbab311397cc73e405b7ac852beb4e278d2c0a9ae4e787e1ff31716 |
|
MD5 | f93fd5e14eef5c04bf6f48c664e4fd94 |
|
BLAKE2b-256 | 35903c3a2596a619eb8375dd8ccd887792fd663f2c3525906587bd51693ef4a3 |
File details
Details for the file bento_headless-0.11.0-py3-none-any.whl
.
File metadata
- Download URL: bento_headless-0.11.0-py3-none-any.whl
- Upload date:
- Size: 119.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.3 CPython/3.7.4 Darwin/18.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 482a8ae65cbc489b9a0239b048a95f003a7f941b59db6807efed36f50498c2d8 |
|
MD5 | bc58e2bb6fb22df18c7ef8d40898152b |
|
BLAKE2b-256 | afe1db2a4d510a1cfd764702b2280bbe7096018c49bdb53f567033bb543eee6e |