Skip to main content

gitwise

English | Español

Python CLI for optimized Git workflows and coding agents integration.

CI Coverage Version License: MIT Python 3.10+ Docs: EN/ES

gitwise addresses three daily pain points:

  1. AI context bloat from raw git diff
  2. Slow repositories without modern Git maintenance settings
  3. Unsafe commit flows that bypass GPG signing rules

Requirements

  • Python >= 3.10
  • git >= 2.29
  • macOS or Linux

Install

Pick one:

curl | bash (recommended, auto-installs uv if missing):

curl -fsSL https://raw.githubusercontent.com/drzioner/gitwise/main/install.sh | bash

uv (if you already use uv):

uv tool install gitwise-cli

From source (development only):

git clone https://github.com/drzioner/gitwise.git
cd gitwise
uv sync
uv run python -m gitwise doctor

Update an existing installation:

uv tool upgrade gitwise-cli          # if installed via uv
# or re-run the curl | bash installer, which always pulls latest

Uninstall:

uv tool uninstall gitwise-cli

Quick Start

gitwise doctor
gitwise setup --dry-run
gitwise setup-agents --local --dry-run
gitwise summarize

Most Used Commands

Command Purpose
gitwise doctor Check Python, git, platform, optional tools
gitwise setup Apply modern Git defaults safely
gitwise setup-agents Install canonical agents layout + optional provider config
gitwise audit Detect stale branches, graph/cache gaps, large blobs
gitwise summarize Compact context for humans and AI
gitwise diff Focused changed-file view (--stat, --staged, --patch)
gitwise worktree Create and clean worktree-based branch setups
gitwise status Enhanced status with staged/unstaged and ahead/behind
gitwise commands --json List subcommands with aliases and metadata
gitwise schema <command> --json Return versioned JSON Schema for command inputs
gitwise completions <shell> Generate shell completion scripts (bash/zsh/fish)
gitwise pr List/check/view PRs via GitHub CLI

For all commands, examples, aliases, and JSON usage, see:

Documentation

GPG and Safety Model

setup and setup-agents never modify commit.gpgsign or user.signingkey.

  • Git layer: setup manages hooks safely (--hooks-mode preserve|native|legacy|skip) to validate signing key availability and conventional commits.
  • Agent layer: deny-rules block --no-gpg-sign, --no-verify, and -c commit.gpgsign=false.

Environment Variables

Variable Description
GITWISE_DEBUG=1 Print each git subprocess command to stderr
GITWISE_LOG_JSON=1 Emit structured stderr logs as JSON lines
GITWISE_JSON_PRETTY=1 Pretty-print JSON output by default
GITWISE_LANG=es / GITWISE_LANG=en Force output locale
GITWISE_THEME=dark / GITWISE_THEME=light / GITWISE_THEME=auto Override color theme selection
GITWISE_NO_COLOR=1 Disable ANSI color output
GITWISE_OUTPUT=agent Force machine-oriented output mode
GITWISE_AGENT=1 Alias to enable agent output mode
GITWISE_GIT_TIMEOUT=<seconds> Override git subprocess timeout
GITWISE_WIDTH=<columns> Override output width

Shell Completions

Generate completions script per shell:

gitwise completions bash > ~/.local/share/bash-completion/completions/gitwise
gitwise completions zsh > ~/.zsh/completions/_gitwise
gitwise completions fish > ~/.config/fish/completions/gitwise.fish

Demo

asciicast

License

MIT - Deiner

Download files

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

Source Distribution

gitwise_cli-0.26.0.tar.gz (142.6 kB view details)

Uploaded Source

Built Distribution

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

gitwise_cli-0.26.0-py3-none-any.whl (152.1 kB view details)

Uploaded Python 3

File details

Details for the file gitwise_cli-0.26.0.tar.gz.

File metadata

  • Download URL: gitwise_cli-0.26.0.tar.gz
  • Upload date:
  • Size: 142.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gitwise_cli-0.26.0.tar.gz
Algorithm Hash digest
SHA256 75344954bafce38efa31e2ba6be3fc0ab22748164b66ed46d3c3a0aced54d5dd
MD5 043ace781fe93bdff1ec10f28f5018d8
BLAKE2b-256 67f8e05d33a135cf024ed47064047e756dab862aa1b855b9b43b7e99a06a1a44

See more details on using hashes here.

File details

Details for the file gitwise_cli-0.26.0-py3-none-any.whl.

File metadata

  • Download URL: gitwise_cli-0.26.0-py3-none-any.whl
  • Upload date:
  • Size: 152.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gitwise_cli-0.26.0-py3-none-any.whl
Algorithm Hash digest
SHA256 21db6ac152784a9b1933e3754df9f5cff4d6c3ec739246341d5386f9e9433b82
MD5 75e87591fa27cefaa192b439593df28a
BLAKE2b-256 ab7e64f1ce22d6d4794218dd81fee2ee212b0cadecc018b4027c3c4c04292757

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 Sentry Error logging StatusPage Status page