Skip to content

JIeCoRyI3/agent-node

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

agent-commits

CLI для переназначения коммитов, сделанных AI-агентами, под авторство текущего пользователя, с шаблонами именования веток и коммитов. Поддерживает Windows, macOS, Linux. Работает на актуальных LTS Node.js. Доступна глобальная установка. Пакет поддерживает ESM/CJS.

Установка

Глобально:

npm i -g agent-commits

Требования окружения:

  • Node.js >= 18
  • Переменная окружения GOOGLE_OAUTH_CLIENT_ID для Google SSO (Device Flow)
  • GitHub токен в GITHUB_TOKEN (или GH_TOKEN) с правами repo и доступом в целевую организацию

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

# 1) Авторизация через Google SSO (device flow)
GOOGLE_OAUTH_CLIENT_ID=YOUR_CLIENT_ID agent-commits login

# 2) Настройка шаблонов (опционально)
agent-commits config --branch "agent" --commit "agent"

# 3) Инициализация агент-репозитория
GITHUB_TOKEN=... agent-commits init --org your-org

# 4) Запуск чекера событий и создание ветки/коммита
GITHUB_TOKEN=... agent-commits start --org your-org --repo agent-<author>-<repo>

Команды

Команда Описание Основные флаги
login Вход через Google SSO (device flow) и сохранение локальной сессии GOOGLE_OAUTH_CLIENT_ID через env
init Создаёт agent-<author>-<repo> в выбранной организации --org <org>, --private
start Ожидает событие из GitHub Actions агента, создаёт ветку и коммит --org <org>, --repo <repo>, --poll-interval <sec>
config Настройка шаблонов --branch <prefix>, --commit <prefix>

Конфигурация

Конфиг хранится локально в папке проекта ./.agent-commits/config.json или в профиле ~/.agent-commits/ (состояние сессии). Поля:

{
  "branchPrefix": "agent",
  "commitPrefix": "agent"
}

Авторизация (Google SSO)

  • Используется OAuth 2.0 Device Flow: CLI выводит URL и код, откройте ссылку и подтвердите доступ.
  • Требуется переменная окружения GOOGLE_OAUTH_CLIENT_ID (секреты не логируются).
  • Сессия хранится локально: ~/.agent-commits/state.json. Без валидной сессии команды заблокированы.

GitHub токен

  • Передайте токен через GITHUB_TOKEN или GH_TOKEN.
  • Токен сохраняется локально в состоянии для удобства повторных запусков.
  • Не логируется.

Сценарии UX

  • Сценарий 1: запускаете любую команду без Google SSO → увидите понятное сообщение и подсказку выполнить agent-commits login.
  • Сценарий 2: после успешного Google SSO команды выполняются и выводят подробные логи.

Коды возврата

  • 0: Успех
  • 10: Не выполнен вход через Google SSO
  • 11: Отсутствует GitHub токен
  • 12: Не git-репозиторий
  • 13: Ошибка git-команды
  • 14: Ошибка GitHub API
  • 15: Отсутствует конфиг
  • 16: Некорректные аргументы
  • 17: Ошибка Google SSO
  • 18: Сессия истекла
  • 19: Сетевая ошибка
  • 20: Неавторизовано

Детерминизм

  • Создание веток и коммитов использует фиксированные шаблоны и временную метку ISO в имени ветки.
  • Команда start реагирует на самое последнее завершённое событие GitHub Actions (предсказуемо и однозначно при одинаковых входных данных).

Совместимость

  • Поддержаны ESM и CJS через двойной бандл. CLI доступна через agent-commits в PATH после глобальной установки.

Безопасность и приватность

  • Секреты и токены не логируются, в логах маскируются.
  • Телеметрия отключена.

Ограничения

  • Не требует Docker и нативных аддонов. Используется device flow и системный браузер.

agent-node

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors