Skip to main content
Glama

🔍 Git Daily Review

Автоматический ежедневный AI-ревью кода для любого Git-репозитория — доступен как CLI, как запланированная процедура или как MCP-сервер для AI-агентов.

Git Daily Review анализирует ваши ежедневные коммиты в нескольких репозиториях, проверяет их на соответствие соглашениям вашего проекта и контрольным точкам качества, и создаёт структурированный отчёт в формате Markdown. Он поставляется с MCP-сервером (Model Context Protocol), поэтому такие агенты, как Claude Code и Claude Desktop, могут запускать ревью, читать отчёты и курировать базу знаний проекта в диалоговом режиме.

Лицензия: AGPL-3.0-only · ядро на Python 3.10+ · TypeScript MCP-сервер


Возможности

  • Любой репозиторий, любой язык — AI адаптируется к вашему стеку (TypeScript, Python, Java, Go, Rust, C#, …)

  • Мульти-репозиторий — отслеживайте столько репозиториев, сколько нужно, за один запуск

  • MCP-сервер — предоставляет ревью, отчёты и курирование базы знаний как инструменты для агентов

  • Мульти-провайдерный AI — Anthropic Claude, OpenAI, Google Gemini или любая локальная модель через Ollama (полностью офлайн)

  • Самообучающаяся база знаний — 7-уровневый контекст проекта, который учится на каждом ревью, с политикой автоматического слияния, обеспечиваемой кодом, и одобрением человеком для изменений с высоким влиянием

  • Вывод в Markdown + HTML — каждый запуск создаёт daily-summary.md и автономный dashboard.html (тренд качества, графики по гейтам и авторам, фильтруемый список коммитов, табличное представление за каждым графиком). Без CDN и сетевых вызовов: данные вашего ревью кода никогда не покидают машину

  • Готовность к RAG — опциональная интеграция с внешним RAG-сервисом для семантического контекста

  • Кроссплатформенное планирование — macOS (launchd), Linux (cron), Windows (Task Scheduler); секреты хранятся в .env, никогда в файлах планировщика

  • Мастер настройки — веб-конфигурация, не требуется ручное редактирование YAML


Related MCP server: MatterAI MCP Server

Быстрый старт (CLI)

git clone https://github.com/YOUR_USER/git-daily-review.git
cd git-daily-review

# 0. Dependencies in a virtualenv (setup.py does this for you if you skip it)
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt

# 1. Configure (opens the wizard in your browser)
python3 setup.py

# 2. Secrets (cloud providers only — Ollama needs none)
cp .env.example .env      # then add e.g. ANTHROPIC_API_KEY=...
chmod 600 .env

# 3. First review
python3 scripts/daily_review.py

# 4. Schedule daily runs
python3 scripts/scheduler.py --install

Справочник CLI:

python3 scripts/daily_review.py                    # review today
python3 scripts/daily_review.py --date 2026-05-12  # specific date
python3 scripts/daily_review.py --days 5           # last N days
python3 scripts/daily_review.py --collect-only     # git data only, no AI
python3 scripts/daily_review.py --history          # report history index

python3 scripts/kb_manager.py --review             # interactive KB curation
python3 scripts/kb_manager.py --approve <ID>       # non-interactive approve
python3 scripts/kb_manager.py --reject  <ID>       # non-interactive reject
python3 scripts/kb_manager.py --stats

Указанный выше python3 может быть любым интерпретатором: если ему не хватает зависимостей, точки входа перезапускают себя в .venv проекта (или $GDR_PYTHON) и сообщают, как его создать, если его нет. Это важно для cron и launchd, где python3 часто является голым системным Python.


MCP-сервер (использование с агентом)

Каталог mcp/ содержит TypeScript MCP-сервер, который оборачивает движок ревью.

cd mcp
npm install
npm run build

Зарегистрируйте его в Claude Code:

claude mcp add git-daily-review -- node /absolute/path/to/git-daily-review/mcp/dist/index.js

Или добавьте его в Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "git-daily-review": {
      "command": "node",
      "args": ["/absolute/path/to/git-daily-review/mcp/dist/index.js"]
    }
  }
}

Доступные инструменты:

Tool

Что делает

run_daily_review

Запустить ревью за сегодня, за дату или за последние N дней

get_report

Прочитать полный отчёт Markdown за дату

list_reports

Список доступных отчётов + индекс истории

list_kb_suggestions

Список предложений базы знаний (фильтр по статусу)

decide_kb_suggestion

Одобрить/отклонить ожидающее предложение по ID

kb_stats

Статистика базы знаний

Затем просто попросите вашего агента, например: «запусти сегодняшнее ревью и обобщи критические проблемы» или «покажи ожидающие предложения базы знаний и одобри те, что касаются соглашений об именовании».

Переопределения окружения: GDR_ROOT (корень проекта, по умолчанию: корень репозитория), GDR_PYTHON (исполняемый файл Python; по умолчанию: .venv проекта, если он есть, иначе python3).


AI-провайдеры

Провайдер

Модели

Переменная окружения для API-ключа

Примечания

Anthropic

Claude Haiku, Sonnet, Opus

ANTHROPIC_API_KEY

OpenAI

GPT-4o-mini, GPT-4o, o1-mini

OPENAI_API_KEY

Google Gemini

Gemini 2.0 Flash, 1.5 Flash/Pro

GEMINI_API_KEY

Ollama (локально)

любая загруженная модель

(нет)

полностью офлайн; установите num_ctx в конфиге (по умолчанию 32768), чтобы избежать обрезания промпта

Секреты хранятся в файле .env в корне проекта (см. .env.example), загружаются автоматически при запуске. Они никогда не записываются в plist-файлы launchd, crontab или пакетные файлы.


База знаний (7 уровней)

config/knowledge-base.yaml предоставляет ревьюеру структурированный контекст проекта:

L0 Identity · L1 Architecture · L2 Conventions · L3 Quality Gates
L4 Domain · L5 Integrations · L6 Release

После каждого запуска система извлекает новые знания, выявленные ревью, и сохраняет их как предложения в config/kb_suggestions/. Политика автоматического слияния обеспечивается кодом (а не моделью): только новые соглашения и информационные/предупреждающие гейты с уверенностью ≥ 0.85 могут автоматически сливаться, максимум 2 за запуск. Критические гейты, доменные правила и интеграции всегда требуют одобрения человека — интерактивно (kb_manager.py --review), через флаги CLI или через MCP-инструмент decide_kb_suggestion.

Полностью отключить обучение можно с помощью kb_learning: false в секции ai: файла config.yaml.


Структура проекта

git-daily-review/
├── setup.py                    ← setup wizard entry point
├── requirements.txt
├── .env.example                ← secrets template (never commit .env)
├── config/
│   ├── config.example.yaml
│   └── knowledge-base.example.yaml
├── scripts/                    ← Python core
│   ├── daily_review.py         ← orchestrator (loads .env at startup)
│   ├── git_collector.py        ← fetch, commits, diffs
│   ├── ai_reviewer.py          ← review pipeline
│   ├── ai_provider.py          ← Anthropic/OpenAI/Ollama/Gemini abstraction
│   ├── kb_updater.py           ← KB learning + code-enforced auto-merge policy
│   ├── kb_manager.py           ← KB curation CLI (interactive + --approve/--reject)
│   ├── rag_client.py           ← optional RAG client
│   ├── report_generator.py     ← Markdown reports + history index
│   ├── html_report.py          ← self-contained HTML dashboard (charts, filters)
│   ├── scheduler.py            ← launchd / cron / schtasks (no secrets on disk)
│   └── wizard_app.py           ← wizard HTTP backend
├── mcp/                        ← MCP server (TypeScript)
│   └── src/index.ts
├── templates/wizard.html
└── reports/                    ← generated daily reports (git-ignored)

Дорожная карта

  • Уведомления по Slack/email для ежедневного отчёта

  • Режим --ci: ненулевой код выхода при критических находках (гейтинг PR)

  • Полный порт ядра на TypeScript

  • Поддержка удалённых репозиториев (ревью без локального клона)

Вклад приветствуется — откройте issue или PR.


Лицензия

Этот проект лицензирован под GNU Affero General Public License v3.0 (AGPL-3.0-only). Если вы запускаете модифицированную версию как сетевой сервис, вы должны предоставить её исходный код пользователям этого сервиса. См. LICENSE.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

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/mrosano1987/git-daily-review'

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