Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>AutoRebase ExtensionNew to Visual Studio Code? Get it now.
AutoRebase Extension

AutoRebase Extension

Jerry Xiao

| (0) | Free
VS Code extension for AutoRebase operations with GUI sidebar
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

AutoRebase VS Code Extension

A VS Code extension that provides a GUI sidebar for AutoRebase operations, allowing you to easily select folders from data/sample and perform automated rebasing operations.

Features

  • Sidebar GUI: Clean, intuitive interface in the VS Code sidebar
  • Folder Selection: Browse and select from available sample folders (base-1.0, base-1.1, feature-5.0, etc.)
  • AutoRebase Processing: Execute complete AutoRebase workflows with a single click
  • Server Management: Automatic start/stop of the Python FastAPI backend
  • Real-time Status: Live updates on processing status and results
  • Error Handling: Comprehensive error reporting and user feedback

Installation

  1. Prerequisites:

    • VS Code 1.74.0 or higher
    • Python 3.11+ with required dependencies
    • Node.js 18+ for building the extension
  2. Build the Extension:

    cd vscode-extension
    npm install
    npm run compile
    
  3. Install in VS Code:

    • Open VS Code
    • Go to Extensions view (Ctrl+Shift+X)
    • Click "..." menu and select "Install from VSIX..."
    • Select the generated .vsix file

Usage

  1. Open the Extension:

    • Open a workspace containing the AutoRebase project
    • Look for the "AutoRebase" icon in the Activity Bar (left sidebar)
    • Click to open the AutoRebase panel
  2. Configure AutoRebase:

    • Enter the repository URLs for base and feature repositories
    • Provide the GitHub SHAs for:
      • Base Software 0 (original base version)
      • Base Software 1 (updated base version)
      • Feature Software 0 (feature with customizations)
    • Optionally specify a custom working directory
  3. Process AutoRebase:

    • Click "Process AutoRebase" to start the operation
    • Monitor progress in the status section
    • View detailed results when complete
  4. Sample Data:

    • The extension automatically detects available sample folders in data/sample/
    • Use these for testing and development

How It Works

The extension integrates with the AutoRebase Python engine through the following process:

  1. Server Management: Automatically starts the Python FastAPI server (main.py)
  2. API Communication: Sends requests to the /autorebase/process endpoint
  3. Repository Cloning: The backend clones the specified repositories to the given SHAs
  4. AutoRebase Processing: Executes the complete AutoRebase workflow:
    • Extracts feature patches (base-0 → feature-0)
    • Extracts base patches (base-0 → base-1)
    • Applies patches to create feature-NEW (feature-5.1)
    • Generates reports and validation results

Sample Data Structure

The extension works with the following sample folder structure:

data/sample/
├── base-1.0/          # Original base version
├── base-1.1/          # Updated base version
├── feature-5.0/       # Feature with customizations
├── feature-5.1/       # Generated feature (output)
└── requirements_map.yaml

API Endpoints

The extension communicates with these FastAPI endpoints:

  • POST /autorebase/process - Main AutoRebase processing
  • GET /health - Server health check
  • GET /autorebase/health - AutoRebase service health

Development

Building from Source

# Install dependencies
npm install

# Compile TypeScript
npm run compile

# Watch for changes
npm run watch

Testing

  1. Open the extension in VS Code
  2. Press F5 to launch a new Extension Development Host window
  3. Test the extension functionality in the new window

Project Structure

vscode-extension/
├── src/
│   ├── extension.ts          # Main extension entry point
│   ├── autorebaseProvider.ts # Webview provider for sidebar
│   └── autorebaseServer.ts   # Python server management
├── package.json              # Extension manifest
├── tsconfig.json            # TypeScript configuration
└── README.md                # This file

Troubleshooting

Common Issues

  1. Server Won't Start:

    • Ensure Python dependencies are installed: pip install -r requirements.txt
    • Check that main.py is in the workspace root
    • Verify Python is in your PATH
  2. Extension Not Loading:

    • Check VS Code version compatibility (1.74.0+)
    • Rebuild the extension: npm run compile
    • Check the Developer Console for errors
  3. AutoRebase Fails:

    • Verify repository URLs are correct
    • Ensure SHAs exist in the repositories
    • Check network connectivity for repository cloning

Debug Mode

Enable debug logging by opening the Developer Console (Help → Toggle Developer Tools) and checking the Console tab for detailed error messages.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

License

This extension is part of the AutoRebase project and follows the same license terms.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft