bumpgen

作者 xeol-io已验证

bumpgen is an AI agent that upgrades npm packages

146
Stars
11
Forks
TypeScript
语言
2026/8/23
添加时间

⚠️ 第三方软件声明

本 Skill 为第三方开源软件,独立托管于 GitHub。SkillTip 仅为信息目录,不控制或维护底层仓库。所显示的安全检查为自动化且范围有限,安装前请自行审查源码。

阅读服务条款

安装

添加到你的 Claude Code skills 目录:

# Add to your Claude Code skills
git clone https://github.com/xeol-io/bumpgen

快速入门

使用 bumpgen 等 Skills 的指南。

安全报告

已验证

上次扫描:—

{
  "status": "PASSED",
  "issues": []
}

README.md

logo

📝 Summary

bumpgen bumps your TypeScript / TSX dependencies and makes code changes for you if anything breaks.

demo

Here's a common scenario:

you: "I should upgrade to the latest version of x, it has banging new features and impressive performance improvements"

you (5 minutes later): nevermind, that broke a bunch of stuff

Then use bumpgen!

How does it work?

  • bumpgen builds your project to understand what broke when a dependency was bumped
  • Then bumpgen uses ts-morph to create an abstract syntax tree from your code, to understand the relationships between statements
  • It also uses the AST to get type definitions for external methods to understand how to use new package versions
  • bumpgen then creates a plan graph DAG to execute things in the correct order to handle propagating changes (ref: arxiv 2309.12499)

[!NOTE] bumpgen only supports typescript and tsx at the moment, but we're working on adding support for other strongly typed languages. Hit the emoji button on our open issues for Java, golang, C# and Python to request support.

🚀 Get Started

To get started, you'll need an OpenAI API key. gpt-4-turbo-preview from OpenAI is the only supported model at this time, though we plan on supporting more soon.

Then, run bumpgen:

> export LLM_API_KEY="<openai-api-key>"
> cd ~/my-repository
> npm install -g bumpgen
> bumpgen @tanstack/react-query 5.28.14

where @tanstack/react-query is the package you want to bump and 5.28.14 is the version you want to bump to.

You can also run bumpgen without arguments and select which package to upgrade from the menu. Use bumpgen --help for a complete list of options.

Github Action

We've created a GitHub action that can be used to run bumpgen. The intended usage is to be triggered on dependabot or renovatebot PRs - if breaking changes are detected, bumpgen will commit to the PR branch.

[!NOTE] The action commits changes to the branch it was triggered from. If you would like those commits to trigger other CI workflows, you will need to use a GitHub Personal Access Token.

Example Workflow

name: "Bumpgen"

on:
  pull_request:
    types:
      - opened

permissions:
  pull-requests: read
  contents: write

jobs:
  main:
    name: Run Bumpgen
    runs-on: ubuntu-latest
    if: ${{ github.event.pull_request.user.login == 'dependabot[bot]'}} # Use renovate[bot] for renovate PRs
    steps:
      - uses: actions/checkout@v4
      - name: Setup # Checkout and setup your project before running the bumpgen action
        uses: ./tooling/github/setup
      - name: Bumpgen
        uses: xeol-io/bumpgen@v0.0.1
        with:
          path: "./packages/bumpgen-core/" # The location of your project's package.json file
          llm_key: ${{ secrets.LLM_API_KEY }}
          github_token: ${{ secrets.GITHUB_TOKEN }}

[!NOTE] If you'd like to be first in line to try the bumpgen GitHub App to replace your usage of dependabot + renovatebot, sign up here.

Limitations

There are some limitations you should know about.

  • bumpgen relies on build errors to determine what needs to be fixed. If an issue is caused by a behavioral change, bumpgen won't detect it.
  • bumpgen can't handle multiple packages at the same time. It will fail to upgrade packages that require peer dependencies to be updated the same time to work such as @octokit/core and @octokit/plugin-retry.
  • bumpgen is not good with very large frameworks like vue. These kind of upgrades (and vue 2 -> 3 specifically) can be arduous even for a human.

🏙️ Architecture

 > bumpgen @tanstack/react-query 5.28.14
       │
┌┬─────▼──────────────────────────────────────────────────────────────────────┐
││ CLI                                                                        │
└┴─────┬──▲───────────────────────────────────────────────────────────────────┘
       │  │
┌┬─────▼──┴───────────────────────────────────────────────────────────────────┐
││ Core (Codeplan)                                                            │
││                                                                            │
││ ┌───────────────────────────────────┐ ┌──────────────────────────────────┐ │
││ │ Plan Graph                        │ │ Abstract Syntax Tree             │ │
││ │                                   │ │                                  │ │
││ │                                   │ │                                  │ │
││ │               ┌─┐                 │ │                  ┌─┐             │ │
││ │            ┌──┴─┘                 │ │               ┌──┴─┴──┐          │ │
││ │            │                      │ │               │       │          │ │
││ │           ┌▼┐                  ┌──┼─┼──┐           ┌▼┐     ┌▼┐         │ │
││ │           └─┴──┐               │  │ │  │        ┌──┴─┴──┐  └─┘         │ │
││ │                │                  │ │  ▼        │       │              │ │
││ │               ┌▼┐              ▲  │ │          ┌▼┐     ┌▼┐             │ │
││ │               └─┴──┐           │  │ │  │       └─┘  ┌──┴─┴──┐          │ │
││ │                    │           └──┼─┼──┘            │       │          │ │
││ │                   ┌▼┐             │ │              ┌▼┐     ┌▼┐         │ │
││ │                   └─┘             │ │              └─┘     └─┘         │ │
││ │                                   │ │                                  │ │
││ │                                   │ │                                  │ │
││ │                                   │ │                                  │ │
││ │                                   │ │                                  │ │
││ └───────────────────────────────────┘ └──────────────────────────────────┘ │
││                                                                            │
└┴─────┬──▲───────────────────────────────────────────────────────────────────┘
       │  │
┌┬─────▼──┴───────────────────────────┐  ┌┬───────────────────────────────────┐
││ Prompt Context                     │  ││ LLM                               │
││                                    │  ││                                   │
││ - plan graph                       │  ││ GPT4-Turbo, Claude 3, BYOM        │
││ - errors                           ├──►│                                   │
││ - code                             │  ││                                   │
││                                    ◄──┼│                                   │
││                                    │  ││                                   │
││                                    │  ││                                   │
││                                    │  ││                                   │
└┴────────────────────────────────────┘  └┴───────────────────────────────────┘

Abstract Syntax Tree

The AST is generated from ts-morph. This AST allows bumpgen to understand the relationship between nodes in a codebase.

Plan Graph

The plan graph is a concept detailed in codeplan by Microsoft. The plan graph allows bumpgen to not only fix an issue at a point but also fix the 2nd order breaking changes from the fix itself. In short, it allows bumpgen to propagate a fix to the rest of the codebase.

Prompt Context

We pass the plan graph, the error, and the actual file with the breaking change as context to the LLM to maximize its ability to fix the issue.

LLM

We only support gpt-4-turbo-preview at this time.

meme

⏱️ Benchmark

bumpgen + GPT-4 Turbo         ██████████░░░░░░░░░░░   45% (67 tasks)

We benchmarked bumpgen with GPT-4 Turbo against a suite of version bumps with breaking changes. You can check out the evals here.

🎁 Contributing

Contributions are welcome! To get set up for development, see Development.

Roadmap

  • codeplan
  • Typescript/TSX support
  • bumpgen GitHub app
  • Embeddings for different package versions
  • Use test runners as an oracle
  • C# support
  • Java support
  • Go support

Join our Discord community to contribute, learn more, and ask questions!

常见问题

What is bumpgen?

bumpgen is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by xeol-io. bumpgen is an AI agent that upgrades npm packages. It has 146 GitHub stars.

Is bumpgen safe to use?

Yes. bumpgen passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.

How do I install bumpgen?

Clone the repository with "git clone https://github.com/xeol-io/bumpgen" and add it to your Claude Code skills directory (see the Installation section above).

What programming language is bumpgen written in?

bumpgen is primarily written in TypeScript. It is open-source under xeol-io on GitHub, so you can review or fork the full source.

Are there alternatives to bumpgen?

Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh bumpgen against similar tools.

评论 (0)

暂无评论,成为第一个分享想法的人!

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI 智能体ai-agentsbrainstorming
查看详情

hermes-agent

by NousResearch

10

The agent that grows with you

234,43747,175Python
AI 智能体ai-agentsagent-orchestration
查看详情

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI 智能体claude-codeai-tools
查看详情

claude-code

by anthropics

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

120,03119,897Shell
AI 智能体
查看详情

开发者还喜欢

基于喜欢此 Skill 的开发者投票和收藏

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI 智能体ai-agentsbrainstorming
查看详情

hermes-agent

by NousResearch

10

The agent that grows with you

234,43747,175Python
AI 智能体ai-agentsagent-orchestration
查看详情

n8n

by n8n-io

12

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

201,88160,308TypeScript
MCP 服务器apisai-tools
查看详情

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI 智能体claude-codeai-tools
查看详情