Skip to main content

Autonomous dependency upgrader powered by LangGraph and LLMs

Project description

loopgrade

Autonomous dependency upgrader powered by LangGraph and LLMs.

Upgrades your dependencies one at a time, runs your tests, reverts what breaks — without you touching anything.


The Problem

Running ncu -u or pip install --upgrade upgrades everything at once. When something breaks you have no idea which package caused it. So you don't upgrade. Deps rot. Security patches pile up.

loopgrade fixes this — one dependency at a time.


How It Works

  1. Detects all outdated dependencies
  2. Picks one, checks for version conflicts before touching any file
  3. Upgrades it, runs your tests
  4. Tests pass → keeps the change, moves to next dep
  5. Tests fail → reverts the file automatically, logs the reason
  6. Gives you a full report of what upgraded, what failed, and why

Installation

pip install loopgrade

Prerequisites:

  • Python 3.10+
  • For npm projects: npm install -g npm-check-updates
  • A Groq or Gemini API key (both have free tiers)

Quick Start

cd your-project
loopgrade init
# add your API key to .env
loopgrade run

Supported Package Managers

  • npm (package.json)
  • pip (requirements.txt)

Configuration

{
  "llm_provider": "groq",
  "model": "llama-3.3-70b-versatile",
  "max_iterations": 20,
  "max_retries_per_dep": 3,
  "package_manager": "npm",
  "test_command": "npm test",
  "skip_major_versions": false,
  "skip": []
}

Links

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

loopgrade-0.1.1.tar.gz (23.3 kB view details)

Uploaded Source

Built Distribution

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

loopgrade-0.1.1-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file loopgrade-0.1.1.tar.gz.

File metadata

  • Download URL: loopgrade-0.1.1.tar.gz
  • Upload date:
  • Size: 23.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for loopgrade-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4f510d72cfcaa859e1435ba594a5b1403c9b9a2f100f485d21a43049ff7103da
MD5 a8a0311abb43d3e43acdc331f581d874
BLAKE2b-256 62aa23cdd2cbc812c534a7f38001644550e8662a7c9eab93f75bb0177ed3d4fe

See more details on using hashes here.

File details

Details for the file loopgrade-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: loopgrade-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 26.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for loopgrade-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 40701f2f72ae44fb70e36a336ca7c9c993f16183ea8761d8e03b24ac4c8da9df
MD5 cd887263fa7416dabb75e559621387a1
BLAKE2b-256 2175912bf81d5fa545602b5e15fc217ed055b5f558996caa2098826c924d014d

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