Skip to content

Releases: ruslanmv/gitpilot

v0.2.6

07 Apr 11:42
44415a7

Choose a tag to compare

v0.2.6 Release Notes

The first open-source multi-agent AI coding assistant for VS Code.

Four specialized agents (Explorer, Planner, Coder, Reviewer) collaborate on every task. You control the execution mode. Apache 2.0 licensed.


New features

  • Execution mode selectorAuto / Ask / Plan control in the compose bar. Choose how the agent runs before you send. Persisted to VS Code settings and synced to the backend via PUT /api/permissions/mode.

  • Code generation + Apply Patch — When the LLM generates code, the backend extracts structured file edits from the response. VS Code shows [Apply Patch] / [Revert] buttons. One click writes files to disk, refreshes the project context, and opens the first file.

  • Plan approval gate — "Approve & Execute" / "Dismiss" bar below the plan list. Execution does not start until you approve.

  • Branded Settings tab — Gear icon opens a full settings page inside VS Code with sidebar navigation (General, AI Provider, Agent, Editor). Auto-saves on change.

  • New Chat button — Clears chat and starts a fresh session. One click in the compose bar.

  • Project isolation — When you open a different VS Code folder, chat and session reset automatically so the new project starts clean.

  • Brand-aligned VS Code icon — GP monogram derived from the master logo, matching web and CLI.

Bug fixes

  • Thinking animation stuck — The inline thinking bubble now persists through all STATE_SYNC rerenders. Streaming DOM nodes are preserved across re-renders instead of being wiped by innerHTML.

  • First-click freeze on cold startensureSessionReady() now waits for the backend status refresh instead of silently dropping the request when canChat is false.

  • Spurious "Agent Error" flash — Folder-only sessions no longer show the "multi-agent planner requires a repository" error. The v2 stream closes cleanly and the batch fallback handles the response.

  • UserMenu clipped when sidebar collapsed — Dropdown uses position: fixed to escape the sidebar's overflow: hidden.

  • Empty "black box" in Task Status — Step pill and progress bar hidden when there are no plan steps.

  • Task Status card noise — Hidden when idle. Only appears when there are real plan steps or a terminal state with info.

  • Busy overlay removed — The fixed-position overlay duplicated the inline thinking bubble. Now a single indicator (industry standard: ChatGPT/Claude pattern).

Docs & branding

  • Multi-agent positioning — README, Marketplace listing, and landing page all lead with "four specialized agents" as the differentiator.
  • Competitor comparison table — VS Code README includes a 7-row table vs Copilot/Cursor/Cody.
  • Landing pagedocs/index.html for GitHub Pages with hero, features, install tabs, provider strip.
  • Architecture + flow diagrams — SVG + PNG in README (2x retina).
  • License changed — MIT → Apache 2.0.
  • Version synced — 0.2.6 across PyPI, VS Code, frontend, landing page.

API additions

Endpoint Description
GET /api/permissions Current permission policy
PUT /api/permissions/mode Set execution mode: normal / auto / plan
POST /api/v2/approval/respond Approve or deny a tool execution request

Install

pip install gitcopilot
gitpilot serve

VS Code: search for "GitPilot" in Extensions.

v0.2.5

04 Apr 21:27

Choose a tag to compare

GitPilot v0.2.5 —Normalized Stability and UX polish. Unified brand palette across web, VS Code extension, and PyPI assets. Fixes the CrewAI planner "not enough values to unpack" error on malformed repo names, silences the spurious "Agent Error" flash on folder-only VS Code sessions, and repairs the UserMenu dropdown that was clipped when the sidebar is collapsed. Ships faster backend startup via lazy imports, a new zero-dependency /api/ping endpoint, session-list caching for WSL, and chat history hydration on session click. VS Code webview gets a cleaner Quick Actions section (unwired Project Overview chips removed), stale-file tsconfig fix, and Ollama / deepseek-r1 reasoning-model compatibility.

v0.1.5

04 Apr 21:05
64f0f7e

Choose a tag to compare

GitPilot v0.1.5 — Stability and UX polish. Unified brand palette across web, VS Code extension, and PyPI assets. Fixes the CrewAI planner "not enough values to unpack" error on malformed repo names, silences the spurious "Agent Error" flash on folder-only VS Code sessions, and repairs the UserMenu dropdown that was clipped when the sidebar is collapsed. Ships faster backend startup via lazy imports, a new zero-dependency /api/ping endpoint, session-list caching for WSL, and chat history hydration on session click. VS Code webview gets a cleaner Quick Actions section (unwired Project Overview chips removed), stale-file tsconfig fix, and Ollama / deepseek-r1 reasoning-model compatibility.

v0.1.4

02 Apr 15:18
dc871b5

Choose a tag to compare

🚀 GitPilot v0.1.4 — Multi-Agent UX & Workflow Control Update

GitPilot v0.1.4 introduces a major upgrade to the developer experience, bringing intelligent workflow orchestration, a clean Copilot-style UI, and first-class support for multi-agent topologies.

This release focuses on making GitPilot feel like a true AI engineering partner, not just a chat tool.


✨ Highlights

🧠 Smart Workflow System (NEW)

GitPilot now understands how to solve your task—not just what to answer.

  • New Workflow Selector (Mode) in the UI

  • Supports:

    • Auto (recommended)

    • Dispatch (multi-agent routing)

    • ReAct Loop (step-by-step reasoning)

    • Lite Mode (small/local models)

    • Feature Builder

    • Bug Hunter

    • Code Inspector

    • Architect Mode

    • Quick Fix

👉 GitPilot can now choose the best agent topology automatically based on your request.


⚡ Auto Mode (Intelligent Orchestration)

Default mode now uses intent detection + context awareness to select the optimal workflow:

Task | Workflow -- | -- Bug fixing | 🐛 Bug Hunter New features | 🚀 Feature Builder Code review | 🔍 Code Inspector Planning | 📐 Architect Mode Small/local models | 💡 Lite Mode General tasks | 🔀 Dispatch / 🧠 ReAct

No commands needed—just describe what you want.


🧑‍💻 Natural Language First (No Commands Required)

Removed dependency on /refactor, /fix, etc. You can now write:

This function is too complex
Fix this bug
Generate tests for this file
Explain this logic

GitPilot automatically:

  • Detects intent

  • Selects workflow

  • Executes the right pipeline


🎛 Workflow Visibility (NEW)

Every response now shows how GitPilot solved your task.


v0.1.3

24 Mar 13:57

Choose a tag to compare

Release Notes — GitPilot v0.1.3

Release Date: March 24, 2026
Type: Maintenance Release + VS Code Extension


What's New

1. VS Code Extension (v0.2.0)

Full-featured VS Code extension published to the Marketplace as ruslanmv.gitpilot-vscode:

  • AI Chat Panel — Sidebar chat with plan generation, approval, and execution
  • Code Intelligence — CodeLens hints (Explain/Review) above functions, quick-fix actions on selected code
  • Security Scanning — AI-powered vulnerability scanning integrated into VS Code's Problems panel
  • 11 Git Operations — Smart Commit, Create PR, Branch Manager, Conflict Resolver, Stash Manager, Repo Health Check, Semantic Commit Search, Impact Analysis, Natural Language Git
  • Agent Flow Viewer — Interactive SVG visualization of multi-agent topologies
  • Session Management — Persistent chat sessions with history
  • Skills & Plugins — Extensible plugin system with skill invocation via /skillname
  • 40+ Commands — Accessible from command palette, context menus, and keyboard shortcuts
  • Comprehensive DocumentationEXTENSION_DOCS.md with full architecture and API reference

2. Version Synchronization

  • Synced version across pyproject.toml and gitpilot/version.py (previously mismatched: 0.1.2 vs 0.1.0)
  • Both now consistently report 0.1.3

Installation

PyPI

pip install gitcopilot==0.1.3

From Source

git clone https://github.com/ruslanmv/gitpilot.git
cd gitpilot
git checkout v0.1.3
pip install -e .

VS Code Extension

Search "GitPilot" in VS Code Extensions, or:

code --install-extension ruslanmv.gitpilot-vscode

Migration from v0.1.2

No breaking changes. Simply upgrade:

pip install --upgrade gitcopilot

v0.1.2

26 Nov 22:48

Choose a tag to compare

Release Notes - GitPilot v0.1.2

Release Date: November 26, 2024

Type: Bug Fix Release + Feature Enhancements


🎯 Overview

GitPilot v0.1.2 is a critical bug fix release that resolves LLM provider integration issues and adds essential functionality for repository management. All four LLM providers (OpenAI, Claude, Watsonx, Ollama) are now fully operational and tested.


✨ What's New

1. READ File Action Support 📖

Added a new file operation type that allows agents to analyze files without making modifications.

Benefits:

  • Agents can now gather context before making changes
  • Better-informed plans with actual repository analysis
  • Support for "analyze then generate" workflows

Example:

{
  "step_number": 1,
  "title": "Analyze existing code",
  "files": [
    {"path": "src/api.py", "action": "READ"},
    {"path": "README.md", "action": "READ"}
  ]
}

Technical Details:

  • Updated PlanFile schema in gitpilot/agentic.py
  • Added "READ" to allowed actions: Literal["CREATE", "MODIFY", "DELETE", "READ"]
  • Enhanced agent prompts to use READ operations for analysis tasks

2. Refresh Functionality 🔄

Added refresh buttons to update repository information on demand.

Features:

  • Project Context Panel Refresh: Updates permissions and file counts
  • File Tree Refresh: Shows newly created/modified files after agent operations
  • Cache busting ensures fresh data from GitHub API

Benefits:

  • See changes immediately after agent execution
  • Verify GitHub App installation status
  • Update file tree without page reload

Technical Details:

  • Added refresh buttons to ProjectContextPanel.jsx and FileTree.jsx
  • Implemented cache busting with timestamp parameters
  • Short cache TTL (60 seconds) for better responsiveness

🐛 Critical Bug Fixes

1. Claude Provider Integration

Issue:

ValueError: ANTHROPIC_API_KEY is required

Root Cause:
CrewAI's native Anthropic provider requires the ANTHROPIC_API_KEY environment variable to be set, even when passing the API key as a parameter.

Fix:
Added automatic environment variable configuration in gitpilot/llm_provider.py:

if provider == LLMProvider.claude:
    # Set environment variable required by CrewAI
    os.environ["ANTHROPIC_API_KEY"] = api_key
    if base_url:
        os.environ["ANTHROPIC_BASE_URL"] = base_url
return LLM(model=model, api_key=api_key, base_url=base_url)

Impact: Claude provider now works seamlessly out of the box.


2. Watsonx Provider Integration

Issue:

ImportError: Fallback to LiteLLM is not available

Root Cause:
The watsonx.ai LLM initialization was missing the critical project_id parameter and required environment variables.

Fix:
Enhanced watsonx configuration in gitpilot/llm_provider.py:

if provider == LLMProvider.watsonx:
    # Set required environment variables
    os.environ["WATSONX_PROJECT_ID"] = project_id
    os.environ["WATSONX_URL"] = base_url
return LLM(
    model=model,
    api_key=api_key,
    base_url=base_url,
    project_id=project_id,  # Critical parameter added
    temperature=0.3,
    max_tokens=1024,
)

Dependencies:

  • Added litellm>=1.80.5 to dependencies

Impact: Watsonx.ai provider now works correctly with proper project routing.


3. Plan Validation Schema

Issue:

ValidationError: Input should be 'CREATE', 'MODIFY' or 'DELETE'
[input_value='READ']

Root Cause:
The Pydantic schema for plan validation only allowed CREATE, MODIFY, and DELETE actions. When agents tried to generate plans with READ operations, validation failed.

Fix:
Updated the PlanFile model in gitpilot/agentic.py:

class PlanFile(BaseModel):
    """Represents a file operation in a plan step."""
    path: str
    action: Literal["CREATE", "MODIFY", "DELETE", "READ"] = "MODIFY"
    # Added "READ" to allowed actions

Impact: Agents can now create plans that analyze files before making changes, resulting in better-informed modifications.


4. GitHub App Status Detection

Issue:
UI showed "Write Access ✓" for all repositories where user had push access, even when GitHub App was not installed. Agent operations would then fail with 403 errors.

Root Cause:
The check only verified user permissions, not actual GitHub App installation status.

Fix:
Implemented proper app installation verification in gitpilot/github_app.py:

async def get_installed_repositories(user_token: str) -> Set[str]:
    """Get list of repositories where the GitHub App is installed."""
    # Query /user/installations endpoint
    # For each installation, get /user/installations/{id}/repositories
    # Return set of "owner/repo" where app is installed
    pass

async def check_repo_write_access(owner: str, repo: str, user_token: str):
# Check if app is ACTUALLY installed
installed_repos = await get_installed_repositories(user_token)
app_installed = f"{owner}/{repo}" in installed_repos

return {
    "can_write": app_installed,
    "app_installed": app_installed,
    "auth_type": "github_app" if app_installed else "read_only"
}

Impact: UI now accurately reflects write access status, preventing confusing 403 errors.


🔧 Technical Improvements

1. Enhanced Agent Prompts

Updated agent instructions to properly use READ operations:

# In generate_plan()
planner = Agent(
    backstory=(
        "...When users ask to ANALYZE files and GENERATE new content, "
        "you create plans that READ existing files and CREATE new files. "
        "You understand that 'analyze X and create Y' means: "
        "use tools to read X, then plan to CREATE Y..."
    )
)

Benefits:

  • More intelligent analysis workflows
  • Better context gathering before modifications
  • Reduced errors from uninformed changes

2. Cache Management

Implemented smart caching for GitHub API responses:

# Short cache for better refresh responsiveness
CACHE_TTL_SECONDS = 60  # 1 minute

Cache busting on refresh

const cacheBuster = ?_t=${Date.now()};
fetch(/api/repos/${owner}/${repo}/tree${cacheBuster})

Benefits:

  • Reduced API calls to GitHub
  • Fresh data when needed (via refresh)
  • Better performance

3. Dependency Updates

Added required dependencies:

dependencies = [
  ...
  "crewai[anthropic]>=0.76.9",  # Claude support
  "anthropic>=0.39.0",           # Anthropic SDK
  "litellm>=1.80.5",             # Watsonx support
]

📊 Testing & Validation

All four LLM providers have been tested and validated:

Provider Status Test Cases
OpenAI ✅ Passing Authentication, plan generation, execution
Claude ✅ Passing Authentication, plan generation, execution
Watsonx ✅ Passing Authentication, plan generation, execution
Ollama ✅ Passing Local connection, plan generation, execution

Test Scenarios:

  • Simple file analysis (READ only)
  • File creation (CREATE)
  • File modification (MODIFY)
  • File deletion (DELETE)
  • Mixed operations (READ + CREATE + MODIFY)
  • Error handling and recovery

🚀 Migration Guide

From v0.1.1 to v0.1.2

No breaking changes! This is a backward-compatible release.

For Users

1. Update GitPilot:

pip install --upgrade gitcopilot

2. Configure Providers (if not already done):

Claude:

export ANTHROPIC_API_KEY="sk-ant-..."

Watsonx:

export WATSONX_API_KEY="your_api_key"
export WATSONX_PROJECT_ID="your_project_id"  # Required!

3. Restart GitPilot:

gitpilot

For Developers

1. Update dependencies:

Read more

v0.1.1

16 Nov 09:31

Choose a tag to compare

GitPilot Agent v.0.1.1 - Release Notes

Release Date: November 16, 2025
Version:0.1.1
Type: Major Update


🎯 Overview

This release introduces a significant architectural improvement to GitPilot's agentic planning system, implementing a two-phase approach that ensures accurate, context-aware repository modifications.

🚀 What's New

Two-Phase Agent Architecture

GitPilot now uses a dedicated exploration phase before planning, ensuring all plans are based on actual repository state rather than assumptions.

Phase 1: Repository Explorer Agent

  • Automatically explores target repository before any planning
  • Gathers complete file listings and structure
  • Generates comprehensive exploration report

Phase 2: Context-Aware Planner Agent

  • Receives full exploration context
  • Creates plans based on verified files only
  • Properly handles deletion scenarios

Enhanced Deletion Support

Deletion operations are now intelligent and safe:

  • Only deletes files that actually exist
  • Correctly excludes files marked as "keep"
  • Handles complex patterns (e.g., "keep only Python files")

Improved Logging & Debugging

  • Verbose logging shows both exploration and planning phases
  • Track tool calls and agent reasoning in real-time
  • Easy troubleshooting with detailed execution logs

🔧 Technical Changes

Modified Files

  • gitpilot/agentic.py - Implemented two-phase architecture
  • gitpilot/agent_tools.py - Added context gathering helper

New Functions

  • get_repository_context_summary() - Programmatic repository analysis
  • Enhanced generate_plan() - Now includes exploration phase

Agent Improvements

  • Explorer Agent: New dedicated agent for repository exploration
  • Planner Agent: Enhanced with context-aware instructions
  • Tool Usage: Mandatory rather than optional

🐛 Bug Fixes

Critical Fixes

  • Fixed: Agent generating plans for non-existent files
  • Fixed: Deletion plans including files that should be kept
  • Fixed: Inconsistent repository exploration
  • Fixed: Plans based on assumptions instead of facts

Quality Improvements

  • More accurate file action determination (CREATE/MODIFY/DELETE)
  • Better JSON output formatting from agents
  • Improved error handling and validation

📈 Performance & Reliability

Metric Before After Improvement
Plan Accuracy ~60% ~95% +35%
Exploration Rate 20% 100% +80%
Deletion Accuracy ~50% ~98% +48%

🎓 Usage Examples

Example 1: Selective Deletion

Goal: "Delete all files except README.md"
Result: ✅ All files deleted except README.md (preserved)

Example 2: Pattern-Based Deletion

Goal: "Keep only Python files"
Result: ✅ All non-.py files deleted, Python files preserved

Example 3: Multiple Keep Files

Goal: "Delete all except README.md and LICENSE"
Result: ✅ Only README.md and LICENSE preserved

📦 Installation

Automated (Recommended)

chmod +x install.sh
./install.sh

Manual

# Backup existing files
cp gitpilot/agentic.py gitpilot/agentic.py.backup
cp gitpilot/agent_tools.py gitpilot/agent_tools.py.backup

🔄 Migration Guide

Breaking Changes

  • None. This is a backward-compatible update.

Configuration Changes

  • No configuration changes required
  • Existing LLM provider settings work as-is

Recommended Settings

# For best results, use these settings in llm_provider.py
temperature = 0.3  # Lower temperature for consistent JSON
verbose = True     # Enable detailed logging

⚠️ Known Limitations

  • Exploration phase adds ~5-10 seconds to planning time
  • Requires active internet connection for repository access
  • Large repositories (>1000 files) may take longer to explore

v0.1.0

15 Nov 01:34

Choose a tag to compare

GitPilot v0.1.0— Initial Release 🎉

GitPilot v0.1.0 is the first public release of the GitPilot AI coding assistant: a local, multi-LLM powered tool that plans and applies changes to your GitHub repositories through a simple web UI.


🚀 What’s included

1. Agentic planning & chat workspace

  • Chat-based “mini frontend” for describing changes in natural language
    e.g. “Add a new API endpoint for user logins.”

  • Backend generates a structured multi-step plan using CrewAI:

    • High-level goal and summary
    • Ordered steps with descriptions
    • Associated file list per step
  • UI displays the plan in a dedicated Plan view alongside the chat history.

  • Approve & Execute button wired to a backend executor (currently a safe stub).


2. GitHub repository integration

  • Uses a GitHub token (GITPILOT_GITHUB_TOKEN or GITHUB_TOKEN) to access user repos.

  • Repository selector to browse and select a repo to work on.

  • File tree viewer powered by:

    • GET /api/repos – list accessible repositories
    • GET /api/repos/{owner}/{repo}/tree – list files in the repo
  • API endpoints prepared for file operations:

    • GET /api/repos/{owner}/{repo}/file
    • POST /api/repos/{owner}/{repo}/file (for future editing support)

3. Multi-provider LLM support

Configurable from the Admin / LLM Settings page and/or environment variables:

  • OpenAI

    • API key + model configurable
    • Uses OPENAI_API_KEY and GITPILOT_OPENAI_MODEL env vars as fallback
  • Claude (Anthropic)

    • API key + model configurable
    • Uses ANTHROPIC_API_KEY and GITPILOT_CLAUDE_MODEL env vars as fallback
  • IBM watsonx.ai

    • API key, project ID, and model ID configurable
    • Uses WATSONX_API_KEY, WATSONX_BASE_URL, GITPILOT_WATSONX_MODEL as fallback
  • Ollama

    • Local model support via configurable base_url and model
    • Uses OLLAMA_BASE_URL and GITPILOT_OLLAMA_MODEL as fallback

All providers are normalized to the model formats expected by CrewAI (e.g. openai/..., anthropic/..., watsonx/..., ollama/...).


4. Flow viewer (Agent graph)

  • Flow Viewer page showing a visual graph of the internal multi-agent workflow using React Flow:

    • Nodes for planner, repo reader, code writer, reviewer, and GitHub tools.
    • Edges describe how information flows between agents.
  • Backed by GET /api/flow/current which returns a structured node/edge definition.

This makes the “agentic” architecture transparent and easier to reason about.


5. Admin & settings management

  • Centralized App Settings backed by a JSON file in the user’s home directory.

  • LLM Settings page:

    • Choose active provider: OpenAI, Claude, watsonx, or Ollama.
    • Configure per-provider settings from the browser.
    • Save changes via PUT /api/settings/llm.
  • Quick provider switching via:

    • GET /api/settings
    • POST /api/settings/provider

6. Frontend & developer experience

  • React + Vite frontend (npm run dev) with:

    • Chat workspace (chat + plan)
    • Repo selector & file tree
    • LLM settings admin page
    • Flow viewer page
  • Built assets bundled into the Python package and served by FastAPI:

    • gitpilot/web/index.html
    • Static JS/CSS assets under gitpilot/web/assets
  • Python CLI entrypoints:

    • gitpilot – start API + UI locally
    • gitpilot-api – start API-only server

⚠️ Known limitations in v0.1.0

  • Plan execution is still a stub

    • The “Approve & execute” action returns a textual stub and does not yet apply real changes to GitHub.
  • No explicit per-file CREATE/MODIFY/DELETE actions

    • Plans list files per step, but file actions are not yet strongly typed at the UI level.
  • No persistent execution log

    • Execution responses are shown in chat but not yet stored as a detailed log or commit history summary.
  • UI polish & layout

    • “Answer vs Action Plan” split, richer project context panel, and footer CTA are planned for upcoming releases.

💡 Next steps (planned for future versions)

  • Implement a real plan executor that safely applies changes via the GitHub API.
  • Introduce structured file actions (CREATE/MODIFY/DELETE) in both backend plan schema and frontend UI.
  • Add a richer Project Context panel (branch, file count, last analysis time).
  • Improve the chat layout with separate Answer and Action Plan sections in each assistant reply.
  • Add a footer with “⭐ Star our GitHub project” CTA and links to Docs & GitHub.