Skip to content
RubaXaPublic

About

🤖 Gennadyᵇᵉᵗᵃ 🗯️ — GENeral Extensible Neural Network Adaptive Data Yntelligence.

Topics

Resources

Stars

8 stars

Watchers

2 watching

Forks

Latest commit

 

History

1,332 Commits

Folders and files

Repository files navigation

🤖 Gennadyᵇᵉᵗᵃ 🗯️

GENeral Extensible Neural Network Adaptive Data Yntelligence.

CLI-инструмент для работы с git-изменениями, merge-конфликтами и GitLab review-пайплайном.


⚡ Быстрый старт

# Справка
npx gennady help

# По умолчанию показывается справка
npx gennady

# Commit запускается только явно
npx gennady commit

🧩 Что нужно в окружении

  • Node.js 22+
  • Git-репозиторий (для команд с git-контекстом)
  • Для GitLab-команд: GITLAB_PERSONAL_TOKEN
# Обязательно для review-verify / review-issues / vcs-reply (live)
export GITLAB_PERSONAL_TOKEN="<token>"

# Опционально (default: /api/v4)
export GITLAB_API_PATH="/api/v4"

🧭 Команды CLI

Swift: UNVERIFIED prototype

Swift поддержка остаётся UNVERIFIED: deterministic unit tests проверяют диагностику, а не нативную работу Xcode/Tuist. Exact E-18/UV-26 deferred post-main-cutover и не блокирует release; это не отменяет FAIL/ENV_FAIL/BLOCKED у выбранных пользовательских Swift gates.

npx gennady verify --plan --phase unit --json
npx gennady verify --phase unit

--plan не выполняет gates; выбранные prerequisites могут проверяться ограниченными version probes под WorkspaceGuard и не являются runtime evidence. SwiftPM не требует Xcode/Tuist. Для реально выбранного Xcode build/test нужны Xcode >=16.2 и project-owned identity:

stack:
  swift:
    xcode:
      workspace: App.xcworkspace # либо project: App.xcodeproj, но не оба
      scheme: App
      destination: platform=iOS Simulator,name=ProjectOwnedSimulator
      testPlan: App # обязателен только для выбранных test-bearing Xcode actions

Tuist >=4.202.0 проверяется только при его фактическом использовании. Formatter/linter нужны только выбранным steps: установите project-pinned версию и выставьте PATH; Xcode выбирается через xcode-select/DEVELOPER_DIR. Missing/broken prerequisites дают actionable BLOCKED, обычная ошибка компиляции/теста — FAIL; ENV_FAIL требует конкретного признака проблемы окружения.

📝 commit

Генерация commit message из staged-изменений.

npx gennady commit
npx gennady commit --mode=oneline
npx gennady commit --branch=develop
npx gennady commit --task=MAILCORE-123
npx gennady commit --apply

Опции:

  • --mode, -m: auto | oneline | detailed
  • --oneline, --short, --one, -o: форсировать one-line
  • --branch, -b: target branch для diff
  • --task, -t: добавить task id в subject
  • --model: модель AI backend
  • --api, --apiUrl: URL AI API
  • --apply: сразу выполнить git commit с сгенерированным текстом

🐱 cat

Вывод файлов в XML или Markdown.

npx gennady cat ./src
npx gennady cat "./src/**/*.ts" --output=md
npx gennady cat ./src --plain
npx gennady cat --url="https://gitlab.com/.../-/merge_requests/123"

Опции:

  • --output, -o: xml (по умолчанию) или md
  • --plain: без ANSI-цветов
  • --exclude, -e: исключить паттерны
  • --ext: фильтр по расширениям
  • --url: MR/PR URL для удалённого сбора файлов

🔍 review

AI-ревью staged изменений.

npx gennady review
npx gennady review --branch=develop

Опции:

  • --branch, -b: target branch для diff (по умолчанию origin/main)

✅ review-verify

Собирает prompt для верификации discussion-тредов Merge Request (GitLab).

# Автоопределение MR по текущей ветке
npx gennady review-verify

# По URL
npx gennady review-verify "https://gitlab.example.com/group/project/-/merge_requests/123"
npx gennady review-verify --url="https://gitlab.example.com/group/project/-/merge_requests/123"

# По ref
npx gennady review-verify group/project!123
npx gennady review-verify --ref=group/project!123

# Явно project + iid
npx gennady review-verify --project=group/project --iid=123

Опции:

  • --branch, -b: branch-режим
  • --url: URL merge request
  • --ref: <project>!<iid>
  • --project: путь GitLab-проекта
  • --iid: IID merge request
  • --all: включать resolved discussions

Примечание: поддерживается GitLab-host (*gitlab* в host).


📄 review-issues

Как review-verify, но возвращает только XML-артефакт issues.

npx gennady review-issues
npx gennady review-issues --ref=group/project!123

Опции: те же, что у review-verify.


🧠 resolve-conflicts

Собирает prompt для AI-разрешения merge-конфликтов с ветвлением по confidence (auto-resolve или диалог с оператором).

# Нужно активное merge-состояние и конфликтующие файлы
npx gennady resolve-conflicts

# Опциональные override-метки веток
npx gennady resolve-conflicts --branch=main --incoming=feature/refactor-x

Опции:

  • --branch, -b: override для current branch label
  • --incoming: override для incoming branch label

Важно: команда не делает git commit, она печатает prompt.


💬 vcs-reply

Постинг ответов в GitLab MR discussions из JSON-массива через stdin.

echo '[{"discussionId":"123","body":"✅ Fixed"}]' | \
  npx gennady vcs-reply --project=group/project --iid=123

# Проверка без отправки
echo '[{"discussionId":"123","body":"✅ Fixed"}]' | \
  npx gennady vcs-reply --project=group/project --iid=123 --dry-run

Опции:

  • --project: путь GitLab-проекта
  • --iid: IID merge request
  • --dry-run, --dry: не отправлять, только показать dry-run вывод

Формат stdin:

[{ "discussionId": "<discussion-id>", "body": "<reply markdown>" }]

🧹 lint

Валидация TypeScript-файлов: file-header, anchors, DbC-контракты, invariant-count.

npx gennady lint ./src
npx gennady lint --staged
npx gennady lint ./src --autofix --verbose

Опции:

  • --autofix: автоисправление DbC-контрактов
  • --staged: только staged и untracked .ts (взаимоисключающий с путями)
  • --verbose, -v: debug-логи
  • --max-invariants: макс. инвариантов на сущность (по умолчанию 3)
  • --exclude: исключить файлы по glob (повторяемый)

🔄 sync

Синхронизация ai/directives/ из npm-пакета в текущий проект.

Sync предназначен для SDD v2. Если в проекте ещё есть канонический маркер v1 tasks/, команда останавливается до записи файлов. Сначала npx gennady sdd-migrate bootstrap . безопасно заменяет только доказанно package-owned V1 tooling и ставит свежий runtime миграции; полный sync выполняется после последнего move, когда tasks/ исчез. См. guides/v1-to-v2-migration.md.

npx gennady sync
npx gennady sync --dry-run
npx gennady sync ts-patterns typescript --dry-run

Опции:

  • --dry-run: предпросмотр без записи

🔄 sync-skills

Синхронизация SDD-навыков из ai/skills/ в .claude/skills/ проекта.

На SDD v1 consumer команда также отказывается до любых записей. Наличие .claude/skills/.gennady-synced помогает диагностике владения, но не заменяет миграцию проекта.

npx gennady sync-skills
npx gennady sync-skills --dry-run
npx gennady sync-skills sdd-execute

Опции:

  • --dry-run: предпросмотр без записи
  • --with-directives: сначала также синхронизировать ai/directives/ (по умолчанию выключено)

🧭 orient

Навигация по проекту: file-header разметка, DBC-контракты, граф зависимостей.

npx gennady orient                          # карта проекта
npx gennady orient --task=TSK-03            # файлы задачи
npx gennady orient --consumer=DbcTsLinter   # кто потребляет модуль
npx gennady orient --file=path/to/file.ts   # детальный просмотр
npx gennady orient --graph                  # граф зависимостей
npx gennady orient --specs                  # обзор спек

Опции:

  • --file, --task, --consumer, --entity: поиск по атрибутам
  • --graph, --specs: обзорные режимы
  • --fuzzy, --detail, --depth, --max-results: настройки вывода

📋 agents-rules

Выводит инструкцию по orient для AI-агентов.

npx gennady agents-rules

🖥️ remote-console

Зеркалирование браузерной консоли в локальный stdout.

npx gennady remote-console
npx gennady remote-console --port=8080
npx gennady remote-console --url="https://example.com"

Опции:

  • --port, -p: порт (по умолчанию 43001)
  • --host: хост (по умолчанию localhost)
  • --url: URL страницы для открытия с активацией

Подробнее: cli/cmd/README.md.


🛠️ Типовые сценарии

1. Сделать коммит

npx gennady commit
npx gennady commit --mode=oneline --apply --task=TSK-42

2. Проверить качество кода

npx gennady lint ./src
npx gennady lint --staged --autofix

3. Навигация по проекту

npx gennady orient                    # карта
npx gennady orient --task=TSK-03      # файлы задачи
npx gennady orient --graph            # граф зависимостей
npx gennady agents-rules              # инструкция для AGENTS.md

4. Верификация MR

export GITLAB_PERSONAL_TOKEN="<token>"
npx gennady review-verify --ref=group/project!123

5. AI-ревью изменений

npx gennady review
npx gennady review --branch=develop

6. Разрешение merge-конфликтов

git merge feature/some-branch
# если есть конфликты
npx gennady resolve-conflicts

7. Собрать файлы для AI

npx gennady cat "./src/**/*.ts" --output=md --plain | pbcopy

8. Синхронизация директив и навыков

npx gennady sync
npx gennady sync-skills

9. Зеркалирование консоли браузера

npx gennady remote-console

About

🤖 Gennadyᵇᵉᵗᵃ 🗯️ — GENeral Extensible Neural Network Adaptive Data Yntelligence.

Topics

Resources

Stars

8 stars

Watchers

2 watching

Forks

Releases

Used by

Contributors

Languages