GSD-2 v2.43 — Автономный AI-агент на Pi SDK | Документация на русском ← все продукты
v2.43.0 · Pi SDK · Autonomous

// gsd-pi · evolution GSD-2

Эволюция Get Shit Done — теперь полноценный CLI-агент. Сам управляет контекстом, git-ветками, сессиями и стоимостью. Одна команда, уходишь, возвращаешься к готовому проекту с чистой git-историей.

$npm install -g gsd-pi@latest⎘ скопировать
GitHub → gsd-build/gsd-2
2.9k★ звёзд 73 релиза 20+ провайдеров 19 расширений

01Зачем GSD-2

Оригинальный GSD стал вирусным как промпт-фреймворк для Claude Code. Он работал, но боролся с инструментом — инжектил промпты через slash-команды и надеялся, что LLM их выполнит. Без реального контроля над контекстными окнами, сессиями или выполнением.

GSD-2 — другой. Это standalone CLI на Pi SDK, что даёт прямой TypeScript-доступ к самому agent harness. То есть GSD теперь может реально делать то, что v1 мог только попросить LLM сделать.

🧠

Контроль контекста

Чистит контекст между задачами программно. Каждый таск — свежее 200k-токеновое окно с предзагруженными нужными файлами.

🤖

Реальное auto mode

State machine читает .gsd/ файлы и диспатчит следующий unit. Не LLM в цикле — настоящий оркестратор.

🌳

Git worktree изоляция

Каждый маилстоун в своём worktree. Атомарные коммиты, squash merge, чистая история на main.

💾

Crash recovery

Lock-файлы и session forensics. Если сессия упала — следующий запуск восстанавливает состояние.

💰

Cost tracking

Per-unit учёт токенов и стоимости. Дашборд показывает текущие траты и проекции. Budget ceiling приостанавливает auto mode.

🔍

Stuck detection

Sliding-window детектор паттернов цикличности. Останавливается с диагностикой вместо бесконечного зацикливания.

02В чём разница с v1

Оригинальный GSD был коллекцией markdown-промптов. Полагался на то, что LLM прочитает их и сделает правильно. GSD-2 — TypeScript-приложение, которое контролирует agent-сессию.

v1 (Промпт-фреймворк)v2 (Agent-приложение)
РантаймSlash-команды Claude CodeStandalone CLI через Pi SDK
КонтекстНадежда что LLM не забьёт окноСвежая сессия на каждый таск
Auto modeLLM в self-loopState machine читает .gsd/
Crash recoveryНет — начинай зановоLock-файлы + session forensics
Git стратегияLLM пишет git-командыWorktree изоляция, squash merge
Cost trackingНетPer-unit ledger токенов и стоимости
Stuck detectionНетRetry один раз, потом stop с диагностикой
Timeout supervisionНетSoft / idle / hard timeouts
Skill discoveryНетАвто-детект и установка скиллов
ReportingНетSelf-contained HTML отчёты
Параллельное выполнениеНетMulti-worker оркестрация

03Структура работы

GSD-2 структурирует работу в иерархию из трёх уровней. Железное правило: таск должен помещаться в одно контекстное окно. Если не помещается — это два таска.

Milestone шипабельная версия (4-10 слайсов)
Slice демонстрабельная вертикальная фича (1-7 тасков)
Task единица работы размером с одно контекстное окно

Цикл слайса

Каждый слайс автоматически проходит через фазы:

Plan (с research) → Execute (per-task) → Complete → Reassess Roadmap → Next Slice
                                                                          ↓ (все готовы)
                                                                  Validate Milestone → Done

Plan — изучает кодовую базу, ресерчит документацию, разбивает слайс на таски с must-haves. Execute — каждый таск в свежем контекстном окне с предзагруженными файлами. Запускает verification commands (lint, test) с auto-fix retries. Complete — пишет summary, UAT-скрипт, отмечает roadmap, коммитит. Reassess — проверяет, актуален ли roadmap. Validate Milestone — финальный гейт перед закрытием.

04Установка

Шаг 1 — Установить пакет

$ npm install -g gsd-pi

Нужен Node.js 22+ (рекомендуется 24 LTS). Если Node ставился через Homebrew на Mac — может быть development release вместо LTS, лучше пинить 24 LTS.

Шаг 2 — Логин в LLM-провайдер

$ gsd > /login

Выбираешь из 20+ провайдеров: Anthropic, OpenAI, Google, OpenRouter, GitHub Copilot и других. Если есть подписка Claude Max или GitHub Copilot — OAuth-флоу делает всё сам. Иначе вставляешь API-ключ.

⚠️ Важно про Google Gemini OAuth

Использование OAuth-токенов от Gemini CLI или Antigravity в сторонних инструментах привело к блокировкам Google-аккаунтов. Это влияет на весь Google-аккаунт, не только на Gemini. Используй API-ключ Gemini вместо OAuth.

Шаг 3 — Использование

$ cd my-project
$ gsd

Открывает интерактивную agent-сессию. Дальше два пути:

👣

Step mode — /gsd

Выполняет один unit за раз, паузится между ними с визардом. Та же state machine что в auto mode, но ты в цикле принятия решений.

🚀

Auto mode — /gsd auto

Запустил, ушёл, вернулся. Ресерч → планирование → выполнение → верификация → коммит → следующий слайс. Полный маилстоун без babysitting'а.

Два терминала, один проект

Реальный воркфлоу: auto mode в одном терминале, рулёжка из другого.

# Терминал 1 — пусть строит $ gsd > /gsd auto # Терминал 2 — рулим параллельно $ gsd > /gsd discuss # обсудить архитектурные решения > /gsd status # проверить прогресс > /gsd queue # поставить в очередь следующий маилстоун

Оба терминала читают и пишут одни .gsd/ файлы на диске. Решения из второго терминала подхватываются автоматически на следующей фазе — без остановки auto-режима.

05Auto Mode — главное

То, что отличает GSD-2 от всего остального. Запустил, ушёл, вернулся к построенному софту.

> /gsd auto

Auto mode — это state machine на основе файлов на диске. Читает .gsd/STATE.md, определяет следующий unit работы, создаёт свежую agent-сессию, инжектит фокусированный промпт со всем нужным контекстом, и даёт LLM выполнить. Когда LLM закончил, auto mode снова читает диск и диспатчит следующий unit.

Что под капотом

🆕

Свежая сессия на unit

Каждый таск, ресерч, плановый шаг получает чистое 200k-токеновое окно. Никакого накопленного мусора.

📥

Pre-loading контекста

Dispatch-промпт включает inline'ом таск-планы, slice-планы, прошлые summaries, dependencies, roadmap. LLM начинает со всем нужным.

🌿

Worktree изоляция

Каждый маилстоун — свой git worktree с веткой milestone/<MID>. Сquash-merge на main одним чистым коммитом.

🔄

Crash recovery

Lock-файл трекает текущий unit. Сессия умерла — следующий /gsd auto читает уцелевший session-файл, синтезирует recovery briefing из всех tool calls дошедших до диска.

🛡️

Provider error recovery

Транзиентные ошибки (rate limits, 500/503) — авто-резюме после задержки. Permanent ошибки (auth, billing) — пауза для ручного ревью.

⏱️

Timeout supervision

Soft timeout предупреждает LLM закругляться. Idle watchdog детектит зависания. Hard timeout ставит на паузу.

📊

Cost tracking

Каждый unit captures токены и стоимость по фазе/слайсу/модели. Дашборд показывает running totals и проекции. Budget ceiling приостанавливает работу.

🔁

Adaptive replanning

После каждого слайса roadmap пересматривается. Если работа выявила новую информацию — слайсы переупорядочиваются, добавляются или удаляются.

Verification enforcement

Настраиваешь shell-команды (npm run lint, npm run test) — выполняются после execute. Failures триггерят auto-fix retries.

⏸️

Escape hatch

Press Escape — пауза. Conversation сохранён. Поинтерактивил с агентом, посмотрел что произошло — /gsd auto резюмит с диска.

06Все команды

// ОСНОВНЫЕ

КомандаЧто делает
/gsdStep mode — выполняет один unit за раз, паузится между ними
/gsd nextЯвный step mode (то же что bare /gsd)
/gsd autoАвтономный режим — ресерч, план, выполнение, коммит, повтор
/gsd quickБыстрый таск с гарантиями GSD, минуя планирование
/gsd stopОстановить auto mode gracefully
/gsd steerHard-steer plan-документов во время выполнения
/gsd discussОбсуждение архитектуры и решений (работает параллельно с auto)
/gsd statusДашборд прогресса
/gsd queueОчередь будущих маилстоунов (безопасно во время auto)
/gsd prefsВыбор моделей, таймауты, budget ceiling
/gsd migrateМигрировать v1 .planning в .gsd формат

// ОТЛАДКА И УТИЛИТЫ

/gsd helpКатегоризированная справка по всем GSD-сабкомандам
/gsd modeПереключить workflow (solo/team) с координированными дефолтами
/gsd forensicsFull-access GSD дебаггер для расследования провалов auto-mode
/gsd cleanupАрхивация phase-директорий завершённых маилстоунов
/gsd doctorHealth-check'и в реальном времени — issues всплывают в виджете и репортах
/gsd keysМенеджер API-ключей — list, add, remove, test, rotate
/gsd logsПросмотр activity, debug и metrics логов
/gsd export --htmlСгенерить HTML-отчёт текущего или завершённого маилстоуна
/worktree (/wt)Git worktree lifecycle — create, switch, merge, remove
/voiceReal-time speech-to-text (macOS, Linux)
/exitGraceful shutdown — сохраняет state перед выходом

// CLI-ТЕРМИНАЛЬНЫЕ

gsd configПерезапустить setup wizard (LLM-провайдер + tool keys)
gsd updateОбновить GSD до последней версии
gsd headless [cmd]Запустить /gsd-команды без TUI (CI, cron, скрипты)
gsd headless queryМгновенный JSON-снэпшот — state, next dispatch, costs (без LLM, ~50ms)
gsd --continue (-c)Резюм самой последней сессии для текущей директории
gsd --worktree (-w)Запустить изолированную worktree-сессию для активного маилстоуна
gsd --webЗапустить web-интерфейс в браузере
gsd sessionsИнтерактивный picker — просмотр и резюм любой сохранённой сессии

// ГОРЯЧИЕ КЛАВИШИ

Ctrl+Alt+GToggle оверлея дашборда
Ctrl+Alt+VToggle voice-транскрипции
Ctrl+Alt+BПоказать background shell-процессы
Alt+VВставить картинку из буфера (macOS)
EscapeПауза auto mode — conversation сохранён

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

Preferences GSD живут в ~/.gsd/preferences.md (глобально) или .gsd/preferences.md (проект). Управляются через /gsd prefs.

---
version: 1
models:
  research: claude-sonnet-4-6
  planning:
    model: claude-opus-4-6
    fallbacks:
      - openrouter/z-ai/glm-5
      - openrouter/minimax/minimax-m2.5
  execution: claude-sonnet-4-6
  completion: claude-sonnet-4-6
skill_discovery: suggest
auto_supervisor:
  soft_timeout_minutes: 20
  idle_timeout_minutes: 10
  hard_timeout_minutes: 30
budget_ceiling: 50.00
unique_milestone_ids: true
verification_commands:
  - npm run lint
  - npm run test
auto_report: true
---

Ключевые настройки

models.*
Per-фазовый выбор моделей — строка для одной модели или {model, fallbacks} для авто-failover
skill_discovery
auto / suggest / off — как GSD находит и применяет скиллы
auto_supervisor.*
Пороги таймаутов для supervision auto-mode
budget_ceiling
USD-потолок — auto mode паузится при достижении
verification_commands
Массив shell-команд после execute (lint, test и т.д.)
verification_auto_fix
Auto-retry при verification failures (default: true)
unique_milestone_ids
Уникальные имена маилстоунов чтобы не было коллизий в команде
git.isolation
worktree (default), branch, или none
auto_report
Авто-генерация HTML-отчётов после маилстоуна (default: true)

Token-оптимизация

Координированная система снижения расхода на 40-60%. Один параметр координирует выбор моделей, пропуск фаз и сжатие контекста:

budget
Экономия 40-60%
Дешёвые модели, скип research/reassess, минимальный inline контекст
balanced ●
Экономия 10-20% · default
Default модели, скип slice research, стандартный контекст
quality
Без экономии
Все фазы, весь контекст, полная мощь моделей

08Любая модель

GSD-2 не залочен на одного провайдера. Запускается на Pi SDK, поддерживающем 20+ провайдеров из коробки. Используй разные модели на разных фазах — Opus для планирования, Sonnet для выполнения, быструю модель для ресерча.

Встроенные провайдеры

Anthropic, Anthropic (Vertex AI), OpenAI, Google (Gemini), OpenRouter, GitHub Copilot, Amazon Bedrock, Azure OpenAI, Google Vertex, Groq, Cerebras, Mistral, xAI, HuggingFace, Vercel AI Gateway, и другие.

OAuth / Max планы

Если есть подписка Claude Max, Codex или GitHub Copilot — можешь использовать напрямую. Pi справляется с OAuth-флоу. API-ключ не нужен.

⚠️ Важно про OAuth

Использование OAuth-токенов от subscription-планов вне их нативных приложений может нарушить ToS провайдера. Google Gemini — приводило к блокировкам аккаунтов. Используй API-ключи вместо OAuth для Google Gemini.

OpenRouter

OpenRouter даёт доступ к сотням моделей через один API-ключ. Используй для запуска GSD на Llama, DeepSeek, Qwen или чём угодно ещё.

Per-phase выбор моделей

models:
  research: openrouter/deepseek/deepseek-r1
  planning:
    model: claude-opus-4-6
    fallbacks:
      - openrouter/z-ai/glm-5
  execution: claude-sonnet-4-6
  completion: claude-sonnet-4-6

Используй дорогие модели где важно качество (планирование), и дешёвые/быстрые где важна скорость (ресерч). Каждая фаза принимает строку модели или объект с model и fallbacks — если основная модель упала, GSD пробует следующую.

09Headless mode — CI и скрипты

gsd headless запускает любую /gsd команду без TUI. Создан для CI-пайплайнов, cron-джобов, скриптовой автоматизации.

# Auto mode в CI $ gsd headless --timeout 600000 # Создать и выполнить маилстоун end-to-end $ gsd headless new-milestone --context spec.md --auto # По одному unit за раз (cron-friendly) $ gsd headless next

# Мгновенный JSON-снэпшот (без LLM, ~50ms) $ gsd headless query

# Заставить выполнить конкретную фазу пайплайна $ gsd headless dispatch plan

Headless авто-отвечает на интерактивные промпты, детектит завершение, выходит со структурированными кодами: 0 — complete, 1 — error/timeout, 2 — blocked. Авто-рестарт на крэшах с exponential backoff.

Web-интерфейс. Запусти gsd --web — получишь полное управление проектом из браузера через server-sent events. Real-time прогресс и multi-project поддержка.

10Миграция с v1

Если есть проекты с .planning директориями от оригинального Get Shit Done — можно мигрировать в формат GSD-2 .gsd:

# Из директории проекта > /gsd migrate # Или указать путь > /gsd migrate ~/projects/my-old-project

Миграционный тул:

  • Парсит старые PROJECT.md, ROADMAP.md, REQUIREMENTS.md, директории фаз, планы, summaries и research
  • Маппит phases → slices, plans → tasks, milestones → milestones
  • Сохраняет состояние (готовые фазы остаются готовыми, summaries переносятся)
  • Консолидирует research-файлы в новую структуру
  • Показывает превью перед записью
  • Опционально запускает agent-driven ревью результата

Поддерживает варианты форматов: milestone-секционированные roadmaps с <details>, bold phase entries, bullet-format requirements, decimal phase numbering.

Обратная миграция (GSD-2 → v1) — через команду /gsd-from-gsd2 в оригинальном GSD.

11Глоссарий GSD-2

Milestone маилстоун
Шипабельная версия. Состоит из 4-10 слайсов. После завершения — squash-merge в main одним чистым коммитом.
Slice слайс
Демонстрабельная вертикальная фича внутри маилстоуна. 1-7 тасков. Один слайс — одна ветка в worktree.
Task таск
Единица работы размером с одно контекстное окно. Атомарный коммит. Если не помещается — это два таска.
Auto mode
Автономный режим. State machine читает .gsd/ файлы и диспатчит unit'ы один за другим без вмешательства человека.
Step mode
Та же state machine, но паузится между unit'ами с визардом. Контролируешь каждый шаг.
Pi SDK
TypeScript SDK для построения agent-приложений. Основа GSD-2 — даёт прямой контроль над agent harness вместо промпт-трюков.
Headless mode
Запуск GSD без TUI. Для CI-пайплайнов, cron-джобов, скриптовой автоматизации. Структурированные exit-коды.
Worktree isolation
Каждый маилстоун в отдельном git worktree с веткой milestone/<MID>. Squash-merge на main одним коммитом.
Must-haves
Механически проверяемые результаты таска: Truths (поведение), Artifacts (файлы с реальной имплементацией), Key Links (связи и imports).
Verification ladder
Лестница проверок: статичные → command execution → behavioral testing → human review (только когда агент не может проверить сам).
Stuck detection
Sliding-window детектор повторяющихся dispatch-паттернов. Retry один раз с глубокой диагностикой, потом stop с указанием конкретного файла.
Token profile
Координированный пресет токен-оптимизации: budget (40-60% экономия), balanced (дефолт, 10-20%), quality (без экономии).
Budget ceiling
USD-потолок в preferences. Когда auto mode достигает — паузится и ждёт ручного решения.
PROJECT.md
Living-doc — что проект из себя представляет прямо сейчас. Всегда подгружается агентами.
DECISIONS.md
Append-only регистр архитектурных решений. ADRs с авторством (human/agent/collaborative).
KNOWLEDGE.md
Кросс-сессионные правила, паттерны и lessons learned.
RUNTIME.md
Runtime-контекст: API endpoints, env vars, сервисы (появилось в v2.39).
STATE.md
Quick-glance дашборд — всегда читается первым агентами для определения позиции.
UAT-скрипт
Human test script, генерируемый автоматически из outcomes слайса. Чтобы человек мог быстро проверить «работает ли как ожидалось».
HTML отчёты
Self-contained отчёты в .gsd/reports/ после каждого маилстоуна. Дерево прогресса, dependency graph (SVG DAG), метрики стоимости, timeline. Без внешних зависимостей.
unique_milestone_ids
Опция в preferences.md для команд: имена маилстоунов с 6-символьным random suffix (M001-ush8s3) чтобы не было коллизий между разработчиками.