Skip to main content

An agentic coding and automation assistant, supporting both local and cloud LLMs

Project description

PatchPal — An Agentic Coding and Automation Assistant

PatchPal Screenshot

Supporting both local and cloud LLMs, with autopilot mode and extensible tools.

PatchPal is an AI coding agent that helps you build software, debug issues, and automate tasks. It supports agent skills, tool use, and executable Python generation, enabling interactive workflows for tasks such as data analysis, visualization, web scraping, API interactions, and research with synthesized findings.

Human-in-the-loop coding agents (e.g., Claude Code, OpenCode, Aider) are typically mutually exclusive with programmatic agent frameworks (e.g., smolagents, PydanticAI). A key goal of this project is to marry both: use the same agent interactively in your terminal (patchpal) or in Python scripts (agent.run("task")), plus autopilot mode for autonomous runs.

Key Features

PatchPal prioritizes customizability: custom tools, custom skills, a flexible Python API, and support for any tool-calling LLM.

Full documentation is here.

Quick Start

$ pip install patchpal  # install
$ patchpal              # start

Setup

  1. Install: pip install patchpal

  2. Get an API key or a Local LLM Engine:

  3. Set up your API key as environment variable:

# For Anthropic (default)
export ANTHROPIC_API_KEY=your_api_key_here

# For OpenAI
export OPENAI_API_KEY=your_api_key_here

# For vLLM - API key required only if configured
export HOSTED_VLLM_API_BASE=http://localhost:8000 # depends on your vLLM setup
export HOSTED_VLLM_API_KEY=token-abc123           # optional depending on your vLLM setup

# For Ollama, no API key required

# For other providers, check LiteLLM docs
  1. Run PatchPal:
# Use default model (anthropic/claude-sonnet-4-5)
patchpal

# Use a specific model via command-line argument
patchpal --model openai/gpt-5.2-codex  # or openai/gpt-5-mini, anthropic/claude-opus-4-5, etc.

# Use vLLM (local)
# Note: vLLM server must be started with --tool-call-parser and --enable-auto-tool-choice
# See "Using Local Models (vLLM & Ollama)" section below for details
export HOSTED_VLLM_API_BASE=http://localhost:8000
export HOSTED_VLLM_API_KEY=token-abc123
patchpal --model hosted_vllm/openai/gpt-oss-20b

# Use Ollama (local - requires OLLAMA_CONTEXT_LENGTH=32768)
export OLLAMA_CONTEXT_LENGTH=32768
patchpal --model ollama_chat/gpt-oss:20b

# Or set the model via environment variable
export PATCHPAL_MODEL=openai/gpt-5.2
patchpal

Tip for Local Models: Local models (i.e., models served by Ollama or vLLM) may work better with the environment variable setting, PATCHPAL_MINIMAL_TOOLS=true, which provides only essential tools (read_file, edit_file, apply_patch, run_shell), reducing tool confusion with smaller models.

Beyond Coding: General Problem-Solving

While originally designed for software development, PatchPal is also a general-purpose assistant. With web search, file operations, shell commands, and custom tools/skills, it can help with research, data analysis, document processing, log file analyses, etc.

PatchPal as General Assistant

Documentation

Full documentation is available here.

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

patchpal-0.16.4.tar.gz (152.8 kB view details)

Uploaded Source

Built Distribution

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

patchpal-0.16.4-py3-none-any.whl (117.8 kB view details)

Uploaded Python 3

File details

Details for the file patchpal-0.16.4.tar.gz.

File metadata

  • Download URL: patchpal-0.16.4.tar.gz
  • Upload date:
  • Size: 152.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for patchpal-0.16.4.tar.gz
Algorithm Hash digest
SHA256 94557dba542392b2a4f92bce992e36a4fc0623431067a65bd704b333cc3ee296
MD5 9b4ed87f17bc7c2ba2a04ca49a581bb0
BLAKE2b-256 0ed80dc07a9cafe2d79f670483d3c2b9546e79942f89d0de5b4e2df34e74683e

See more details on using hashes here.

Provenance

The following attestation bundles were made for patchpal-0.16.4.tar.gz:

Publisher: release.yml on amaiya/patchpal

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

File details

Details for the file patchpal-0.16.4-py3-none-any.whl.

File metadata

  • Download URL: patchpal-0.16.4-py3-none-any.whl
  • Upload date:
  • Size: 117.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for patchpal-0.16.4-py3-none-any.whl
Algorithm Hash digest
SHA256 23c22d7dd166686e7cf2a6717d0cfc104d763db18f8942279fe0ba0db85661d7
MD5 e080b21bb154f8c1dd7d3c765f377e71
BLAKE2b-256 a835d5f0d85a574e3cfc345acdd0f95a902a0c6c98ea0152878d39b55e886f8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for patchpal-0.16.4-py3-none-any.whl:

Publisher: release.yml on amaiya/patchpal

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