Skip to main content
Glama
Angad816

GitPilot MCP

by Angad816

GitPilot MCP

GitPilot — это управляемая панель управления для AI-инженерии на GitHub. Она связывает задачи, одобренный локальный код, долговременную память проекта и проверяемые запуски верификации через инструменты MCP и веб-дашборд.

Возможности

  • Список собственных, совместных и организационных репозиториев, доступных подключённой учётной записи GitHub.

  • Создание, обновление, назначение меток, комментирование, закрытие и повторное открытие задач.

  • Восстановление знаний о репозитории между сеансами AI.

  • Получение ранжированных фрагментов кода в рамках фиксированных бюджетов токенов.

  • Чтение ограниченных диапазонов файлов и применение правок с точным совпадением.

  • Запуск только команд верификации, полученных из манифеста.

  • Требование успешной верификации перед завершением запуска исправления AI.

  • Ведение неизменяемой истории контекста, чтений, правок, проверок и завершений.

  • Подключение собственного AI-провайдера репозитория и генерация структурированного предложения патча, применение его только после явного одобрения, верификация и публикация в виде черновика pull request — никогда на защищённой ветке, никогда без второго явного одобрения на публикацию.

  • Возможность автоматического повтора GitPilot после неудачной верификации (до ограниченного числа попыток), перенося только сбой, а не весь репозиторий — при этом остановка для проверки человеком происходит при высокорискованном или низкодоверительном предложении, и публикация никогда не выполняется автоматически.

  • Выбор ручного режима без AI в рамках репозитория, который блокирует вызовы провайдера, сохраняя ограниченные доказательства, точные правки, изолированные ветки, разрешённую верификацию, историю аудита и публикацию черновиков PR — всегда в один клик, даже после сбоя биллинга, квоты или учётных данных на пути AI.

Related MCP server: Agentic CI/CD MCP Orchestrator

Настройка

cd /d "C:\Projects - Building\GithubPilotMCP"
.venv\Scripts\activate.bat
pip install -r requirements.txt
copy .env.example .env

Запустите дашборд и вставьте персональный токен доступа GitHub в Connect repository & brain. При локальной установке только с loopback GitPilot создаёт приватный сохранённый ключ хранилища в data/.gitpilot-master-key, проверяет токен, шифрует его в состоянии покоя и никогда не возвращает его в браузер. Продакшн, стейджинг и развёртывания с доступом из сети должны устанавливать GITPILOT_MASTER_KEY через защищённое хранилище секретов. В качестве альтернативы начальной настройки установите GITHUB_TOKEN в .env.

Предпочтительно использовать fine-grained токен с доступом только к целевым репозиториям. Используйте чтение метаданных, чтение/запись содержимого, чтение/запись задач и чтение/запись pull request, когда нужен полный рабочий процесс диагностики, патча и черновика PR. GitHub может потребовать одобрения владельца репозитория или администратора организации; GitPilot не может обойти это одобрение.

Сопоставьте одобренные локальные репозитории для операций с кодом:

GITPILOT_CODE_ROOTS=my-repo=C:\path\to\my-repo

Разделяйте несколько сопоставлений точкой с запятой. GitPilot перечисляет все репозитории, доступные токену, но может читать или редактировать код только в явно сопоставленных рабочих областях.

Диагностика настройки

Перед регистрацией GitPilot в Claude проверьте, что всё настроено правильно:

python setup_doctor.py

Каждая проверка выводит статус на простом языке, точный шаг восстановления при ошибке и машиночитаемые детали. Она никогда не выводит значение токена. Диагностика распознаёт как зашифрованные подключения дашборда, так и GITHUB_TOKEN, затем проверяет Python, зависимости, аутентификацию GitHub, доступ к репозиториям, SQLite, рабочие области кода, готовность MCP, порт дашборда и готовность регистрации Claude CLI.

Дашборд

python dashboard.py

Откройте http://127.0.0.1:8765. Держите этот интерфейс на localhost или размещайте за аутентифицированным TLS.

Элемент управления Log in предоставляет нативные учётные записи email/пароль без необходимости Google. Создание учётной записи запрашивает имя профиля GitHub, а не репозиторий. Каждая учётная запись получает уникальный идентификатор клиента. Пароли солятся и хэшируются односторонне с помощью scrypt; учётные данные GitHub и AI продолжают шифроваться с помощью GITPILOT_MASTER_KEY и привязываются к этому идентификатору клиента. Клиенты также могут создавать отзываемые ключи API GitPilot gp_live_... из раздела Account & API access. Открытый текст ключа API отображается один раз, и хранится только его SHA-256 хэш.

GitPilot никогда не собирает комбинацию имени пользователя/пароля GitHub или одноразовый пароль GitHub. При настроенном GitHub App создание учётной записи переходит на экран установки GitHub, чтобы клиент выбрал точные репозитории и разрешения. При настроенном OAuth GitPilot перенаправляет на поток авторизационного кода GitHub с проверкой состояния и PKCE; GitHub обрабатывает вход и двухфакторную аутентификацию на github.com, затем возвращает авторизационный токен. Проверенный персональный токен доступа остаётся локальным запасным вариантом. Подтверждённая личность GitHub заменяет любую опечатку в профиле, и GitPilot перечисляет только те репозитории, к которым, по словам GitHub, подключение имеет доступ.

Выбор репозитория происходит после проверки подключения. Клиент может позже снова запустить Select repositories после создания репозитория, принятия приглашения или расширения установки токена/App. Репозитории с отдельным владельцем и организационные репозитории остаются подчиненными правилам одобрения GitHub.

Локальный гостевой предпросмотр остаётся доступным по умолчанию. Для развёрнутого клиентского сервиса установите GITPILOT_REQUIRE_ACCOUNT_LOGIN=true, настройте постоянный GITPILOT_SESSION_SECRET, установите GITPILOT_HTTPS_ONLY=true и завершайте трафик через HTTPS. Не создавайте файлы Python или конфигурации, содержащие секреты одного клиента; записи учётных данных принадлежат зашифрованному хранилищу базы данных, ограниченному владельцем.

Для надёжной презентации без зависимости от подключения к площадке или живой учётной записи GitHub откройте http://127.0.0.1:8765/?demo=1. Режим демо чётко обозначен и использует смоделированные данные репозитория, задач, поиска, памяти, модели, стоимости, подключения GitHub, подключения AI-провайдера и Brain Profile. Обычный URL всегда использует реальные настроенные сервисы.

Подключение репозитория и выбор мозга

Нажмите Connect repository & brain, чтобы открыть мастер настройки: вставьте и проверьте токен GitHub, выберите любой доступный собственный/совместный/организационный репозиторий, выберите DeepSeek, Anthropic, OpenAI-совместимый/локальный, Google Gemini или xAI Grok, подключите собственный ключ провайдера клиента, выберите модель, установите лимиты токенов и стоимости и просмотрите всё перед активацией. Это BYOK (принеси свой ключ): GitPilot никогда не предоставляет общий ключ разработчика, никогда не переключается на ключ оператора и никогда не делится учётными данными одного клиента с другим клиентом. Использование провайдера и расходы принадлежат учётной записи клиента, выдавшей ключ. Проверка доступа объясняет, когда отдельный владелец или организация должны одобрить доступ, и мастер может принять ожидающее приглашение в репозиторий после того, как GitHub его выдаст. Настроенный GitHub App остаётся дополнительным режимом подключения. См. docs/BRAIN.md для полной архитектуры, модели данных и модели угроз.

При выборе рабочего процесса выберите Manual / no AI, чтобы работать без учётных данных AI или вызовов провайдера. Этот выбор хранится отдельно для каждого репозитория и обеспечивается бэкендом. Переключение обратно на AI требует явной активации действительного Brain Profile репозитория.

Хостируемый доступ к AI и подписки на чат — это отдельные продукты. Доступ ChatGPT Plus/Pro или Codex не предоставляет автоматически биллинг OpenAI Platform API для вызовов, выполняемых GitPilot, а подписка на чат DeepSeek не финансирует API DeepSeek. Мастер делает это различие явным. Чтобы избежать платы за хостируемую модель, используйте Manual / no AI или подключите локальный сервер в стиле Ollama/vLLM через OpenAI-compatible / local. DeepSeek V4 Flash — самый дешёвый хостируемый вариант во встроенном каталоге, но он всё равно требует ключа API DeepSeek Platform и доступного баланса.

Пользователи без ключа API могут выбрать Use external chat (copy/paste). Это отдельный ручной запасной вариант, а не подключение к учётной записи ChatGPT/Claude: GitPilot не может войти в подписку пользователя или управлять ею. Он создаёт ограниченный, готовый к копированию промпт, содержащий только выбранные доказательства задачи и разрешённые команды верификации. Пользователь вставляет этот промпт во внешнего ассистента, затем вставляет возвращённое JSON-предложение обратно в GitPilot. Импортированный результат не заслуживает доверия: он должен пройти те же проверки области файлов, точного совпадения, размера патча, команд верификации, хэша предложения, одобрения человеком, изолированной ветки и тестов, что и предложение, сгенерированное API. GitPilot не выполняет вызовов провайдера и записывает нулевую стоимость модели для этой передачи.

Как только мозг репозитория активен, запуск управляемого исправления из задачи проводит через доказательства → диагностику → предложение патча → одобрение и применение (изолированная ветка) → верификацию → одобрение и публикацию (черновик PR) — каждый этап отображается на панели конвейера дашборда, и каждая запись в файловую систему/GitHub защищена отдельным явным одобрением человека. См. docs/BRAIN.md §16 для точного описания того, что AI может и не может делать на каждом этапе.

Хостируемый мультитенантный вход (опционально, бета)

По умолчанию дашборд работает в локальном режиме с одним владельцем — без входа, идентично текущему. Чтобы позволить нескольким людям входить со своей собственной учётной записью GitHub:

  1. Создайте GitHub OAuth App на https://github.com/settings/developers. Установите его URL обратного вызова авторизации на http://<ваш-хост>/auth/callback.

  2. Установите GITHUB_OAUTH_CLIENT_ID и GITHUB_OAUTH_CLIENT_SECRET в .env из этого приложения.

  3. Сгенерируйте GITPILOT_MASTER_KEY (см. .env.example) — он шифрует токен GitHub каждого вошедшего пользователя в состоянии покоя. Никогда не коммитьте его и не делитесь им за пределами хранилища секретов вашего развёртывания.

  4. Перезапустите дашборд. Посетители теперь видят экран «Log in with GitHub».

Память проекта и история запусков исправлений ограничены вошедшим пользователем в хостируемом режиме. Локальное редактирование кода остаётся намеренно недоступным для хостируемых пользователей, потому что хостируемый сервис не может безопасно получить доступ к диску клиента; запускайте MCP-клиент локально для операций с кодом.

Нативные учётные записи GitPilot независимы от опционального потока GitHub OAuth. Клиент может сначала создать рабочую область email/пароль, а затем вставить fine-grained персональный токен доступа GitHub в мастер репозитория. OAuth может оставаться отключённым для локального развёртывания.

Для максимально надёжного онбординга клиентов настройте публичный GitHub App и установите GITHUB_APP_ID, GITHUB_APP_SLUG и GITHUB_APP_PRIVATE_KEY_PATH. GitHub Apps предпочтительны, потому что клиенты выбирают конкретные репозитории, и приложение получает fine-grained разрешения и кратковременные установочные токены. OAuth остаётся поддерживаемым запасным вариантом. Зашифрованный fine-grained персональный токен доступа остаётся доступным для локальной разработки, где ни одна из интеграций не настроена.

Опциональные значения GITPILOT_INPUT_USD_PER_MTOK и GITPILOT_OUTPUT_USD_PER_MTOK управляют нейтральной к провайдеру плановой оценкой, отображаемой перед запуском. Фактический биллинг провайдера остаётся авторитетным.

Claude MCP

Зарегистрируйте один раз:

claude mcp add gitpilot -- "C:\Projects - Building\GithubPilotMCP\.venv\Scripts\python.exe" "C:\Projects - Building\GithubPilotMCP\server.py"

Пример промпта:

Start an AI fix run for issue #12 in atlas-library-ai. Recall project memory, inspect only the ranked files, make the smallest safe edit, verify it, save the resolution, and only then close the issue.

Ручной поток использует ai_start_issue_fix, ai_read_file, ai_edit_file, ai_verify_fix и ai_complete_issue_fix. Когда у репозитория есть активный Brain Profile, управляемый поток исправления (ai_generate_patch_proposal, ai_approve_and_apply_patch, ai_verify_fix, ai_publish_fix) управляет теми же границами сбора доказательств и одобрения человеком через патч, созданный AI, вместо ручных правок. Произвольные команды оболочки никогда не принимаются.

Ручные точные правки хэшируются для аудита, применяются только на выделенной ветке gitpilot/fix-* и могут использовать тот же проверенный издатель черновиков pull request. Патчи, сгенерированные AI, требуют точного хэша рассмотренного предложения; его отсутствие приводит к закрытию с ошибкой.

Docker

docker compose up --build

Образ запускается от непривилегированного пользователя с файловой системой только для чтения. SQLite сохраняется в data/, а одобренный код монтируется отдельно.

Тест

python -m pytest -q

Это запускает только полный офлайн-набор — каждый тест с живыми учётными данными является опциональным и пропускается по умолчанию (tests/test_live_integration.py, tests/test_live_guided_fix_integration.py). См. их строки документации модулей для точных инструкций по настройке, если вы хотите проверить реальную установку GitHub App и реального AI-провайдера от начала до конца.

См. docs/ARCHITECTURE.md с описанием модели памяти, конечного автомата, границ провайдеров и рекомендаций по эксплуатации, а также docs/BRAIN.md с описанием подключения GitHub App, хранилища ключей ИИ, профиля репозитория Brain и конвейера автоматического исправления ошибок. Никогда не коммитьте .env и не раскрывайте токены в журналах или снимках экрана.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    The Git MCP Server allows AI assistants to perform enhanced Git operations via the Model Context Protocol, supporting core Git functions, branch and tag management, GitHub integration, and more.
    21
    121
    6
  • A
    license
    Not graded
    quality
    C
    maintenance
    Unified MCP control plane for AI pull request reviews on GitHub.
    90
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    An MCP server that enables autonomous code development by pulling GitHub issues, fixing them in a sandboxed environment, running tests, opening PRs, and promoting to production upon human approval.
    3
    AGPL 3.0

View all related MCP servers

Related MCP Connectors

  • A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…

  • Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.

  • Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Angad816/GITPILOT-MCP---AI-POWERED-GITHUB-TOOL-CONTEXT-LAYER'

If you have feedback or need assistance with the MCP directory API, please join our Discord server