Skip to main content

Pythonic replacement for GNU Make

Project description

Jeeves Shell

Build Status codecov Python Version wemake-python-styleguide

A Pythonic replacement for GNU Make, with re-usability and modularity added as a bonus.

Jeeves transforms your shell experience by enabling you to create custom Python-based shell commands to manage and automate your development workflows.


  • Custom Shell Commands: Construct commands to build, compile, lint, format, test, deploy, and propel your projects forward.
  • Python-Powered: Use Python for readable and maintainable workflows.
  • Rich Integrations: Stylish command output with rich and sh.
  • Plugin System: Share your setup across projects.

Quick Start

Install with pip:

pip install 'jeeves-shell[all]'

Or with poetry:

poetry add --group dev --extras=all jeeves-shell


Create a file named in the root of your project.

import rich
import sh

def hi():
    """Hello world."""
    user_name = sh.whoami()
    machine = sh.uname('-a')

    rich.print(f'Hello [b]{user_name}[/b]!')
    rich.print(f'This code is running on: [b]{machine}[/b].')

And then execute in your shell:

j hi

this should print something along the lines of:

Hello john-connor!
This code is running on: Cyberdyne T800!

Learn More

Read the tutorial!


This project was generated with wemake-python-package.

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

jeeves_shell-2.3.2.tar.gz (5.5 kB view hashes)

Uploaded Source

Built Distribution

jeeves_shell-2.3.2-py3-none-any.whl (6.9 kB view hashes)

Uploaded Python 3

Supported by

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