Skip to content

jdtoombs/rebase-helper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rebase Helper for Pi

Standalone Pi extension for resolving Git rebase conflicts in a localhost browser UI.

Work in progress / use at your own risk: Rebase Helper is experimental and should not be relied on for important rebases yet. It edits files, stages changes, and can run git rebase --continue. Test it only on throwaway branches or repos you can easily restore. Always make your own backup/checkpoint before using it.

Install

From this repo:

bun install
pi install ./rebase-helper

Usage

Start or continue a rebase until Git pauses on conflicts, then run this in Pi:

/rebase-helper

The extension will open a localhost browser page where you can review each conflict, choose a resolution, optionally ask for an AI suggestion, and click Continue.

Continue applies the selected resolutions, stages resolved files, and runs git rebase --continue.

Safety notes

Rebase Helper is a WIP local development tool. Do not use it as the only copy of important work, and do not assume it can recover every rebase state.

  • Use a throwaway branch while testing.
  • Review the resulting file changes before trusting the rebase result.
  • AI suggestions are hints only; verify the displayed conflict content yourself.
  • The browser server uses a random per-session token. Do not share the opened URL.
  • Checkpoint rewind is experimental and may not support every rebase shape.

Environment variables

  • REBASE_HELPER_PORT — force a localhost server port.
  • REBASE_HELPER_REMOTE=1|0 — override SSH/remote-session detection.
  • REBASE_HELPER_BROWSER — browser command to use instead of the platform default.

Remote sessions bind on 0.0.0.0 and notify the localhost URL to forward/open.

Project layout

index.ts                 Pi extension entrypoint
src/extension.ts         command registration and Pi/browser session orchestration
src/browser.ts           local browser/open-url helpers
src/runtime.ts           Git/runtime adapter
src/rebase/              rebase state, checkpoints, and conflict-resolution logic
src/server/              localhost review API server
public/                  browser UI HTML/CSS/image assets
tests/                   Bun unit/integration tests

Planning notes and local Pi metadata are intentionally ignored (PLAN*.md, .pi/) so the package stays focused on source, tests, and public assets.

Development

bun test
bun run typecheck

About

Pi extension that allows the user to resolve rebase conflicts in a UI on their localhost.

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors