repoburg
v1.3.21
Published
A local AI-powered software developer assistant that runs on your own machine.
Readme
Repoburg
Repoburg is a local-first AI assistant that gives you full control over your development workflow. Keep your code private, customize your workflow, and supercharge your development, all running on your own machine.
Features
- 🔒 Private by Default: Your code and project context never leave your machine. Only LLM prompts are sent out.
- ⚙️ You're in Control: Review every AI-generated change. Choose between a "Review First" workflow or an "Apply & Revert" workflow for rapid iteration.
- 🔧 Fully Customizable: Tailor system prompts and context templates to perfectly match your project's coding style and standards. Use custom snippets to streamline template creation.
- 🚀 Local Platform: Runs as a local daemon, managing separate backend instances for each of your projects, ensuring clean separation and easy management via a dedicated CLI.
- ⚡️ Integrated LLM Flow: Optionally connect directly to the Gemini API, removing the need to manually copy and paste prompts.
The Repoburg Platform
Repoburg consists of a few key components that work together:
repoburgCLI: The main tool you'll use to manage the platform. Start backends for your projects, check their status, view logs, and manage your authentication.- Platform Daemon (
repoburg-daemon): A background service that manages and runsrepoburg-backendinstances for each of your projects. repoburg-backend: The NestJS server that contains the core logic for AI interaction, file system operations, and more. One instance runs per project.- Frontend Application: The web-based UI where you interact with your sessions, review AI-generated plans, and manage templates. Hosted at app.repoburg.com.
- Website: The main website for documentation and account authentication, hosted at repoburg.com.
Getting Started
Prerequisites
- Node.js (v23.0.0 or higher)
- npm
Installation
Install the repoburg CLI tool globally using npm:
npm install -g repoburgUsage
Start the Daemon: The daemon is the background service that manages everything. You need to start it once in a separate terminal.
repoburg-daemon(For production, you'd set this up to run as a system service, e.g., with
launchdorsystemd).Start a Repoburg Backend for your project: Navigate to the project directory you want to work on and run:
repoburg start .This command will:
- Authenticate you via the website (
repoburg.com) if it's your first time. - Start a dedicated
repoburg-backendinstance for your project. - Open the frontend application in your browser, connected to the correct backend.
- Authenticate you via the website (
Use the Integrated LLM Flow (Optional): By default, Repoburg uses a "Manual LLM" flow. To enable direct Gemini API integration:
- Go to Settings in the frontend UI.
- Turn off the "Manual LLM" toggle.
- The first time you submit a prompt in this mode, the
repoburg-backendterminal will display a URL. Open this URL in a browser to authenticate with your Google account. This is a one-time setup per project.
Manage Services: You can list, stop, and view logs for all running backends using the CLI.
repoburg list # List all managed project backends repoburg logs <project-name> repoburg stop <project-name> repoburg remove <project-name>
Development
To run the full stack in development mode from a cloned repository:
- Clone and Install:
git clone https://github.com/celalertug/repoburg.git cd repoburg npm install - Build all projects:
npm run build - Link the CLI:
This step makes the
repoburgcommand available globally on your system, pointing to your local source code.npm link - Run Development Servers:
- Terminal 1: Start the Daemon
npm run dev:daemon - Terminal 2: Start the Website (for auth)
npm run dev:website - Terminal 3: Start the Frontend UI
npm run dev:frontend - Terminal 4: Start a project backend
From the directory of the project you want to work on:
Note: When running in development,repoburg start .repoburg startwill use the development build of the backend and automatically connect to your dev frontend.
- Terminal 1: Start the Daemon
