goctl for go-zero CLI

goctl генерирует код сервисов и клиентов из API-описаний для go-zero, чтобы агент начал с согласованного каркаса проекта.

  • 33 427 ★ репозитория
  • Последний коммит
  • MIT
CLI

Расширенный доступ

Почему такой уровень

  • Генератор создает и меняет исходники в выбранном каталоге проекта.
Все причины и проверки

zeromicro/go-zero

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add cli/goctl-for-go-zero

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

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

  • Генератор создает и меняет исходники в выбранном каталоге проекта.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

В файле `.api` команда описывает маршруты, запросы и ответы сервиса. По этому контракту goctl создает каталоги обработчиков, типов и прикладной логики. Код генератора находится в репозитории go-zero; для RPC он также работает с файлами `.proto`. Агент с терминалом вызывает goctl напрямую. Если клиент принимает только MCP-инструменты, можно подключить отдельный адаптер mcp-zero. Разработчик просматривает созданные файлы, реализует обработку запросов и запускает тесты. Отдельные инструкции ai-context и zero-skills описывают этот порядок работы и шаблоны go-zero.

Для кого. Авторам Go-сервисов на go-zero, которые хотят начинать агентную разработку с API-спецификации и генератора.

Подходит, если

  • Контракт нового HTTP-сервиса согласован, и команда создает исходники go-zero по файлу `.api`.
  • Мобильный клиент на Java или Dart обращается к тому же API, что описан для сервера.
  • После изменения запросов и ответов разработчик заново генерирует типы и просматривает различия.
  • Разработчик начинает описание нового API с шаблона и заполняет в нем маршруты, запросы и ответы.

Не подходит, если

  • Проект не использует go-zero и его соглашения не подходят.
  • Генератор должен полностью реализовать бизнес-правила.
  • Существующие ручные правки собираются перезаписать без просмотра различий.

Пример запроса к агенту

Подготовь API-спецификацию нового тестового сервиса и план goctl-генерации с отдельным ревью различий.

Ограничения

Для установки нужен Go, а каталог с бинарником goctl должен быть доступен агенту через `PATH`. Генератор читает контракт из `.api` или `.proto`; пропущенные требования к запросам он самостоятельно не восстанавливает. Прикладную логику разработчик пишет после генерации и проверяет тестами: созданные обработчики не заменяют реализацию сервиса. При повторном запуске в существующем проекте просмотрите созданные и измененные файлы, чтобы сохранить нужные ручные правки.

Как отключить. Прекратите вызовы генератора и удалите бинарник установленным способом. Сгенерированный код остается частью проекта.

Частые вопросы

Как создать Go-сервис из `.api`?

Для файла из примера выполните `goctl api go -api greet.api -dir greet`. В каталоге `greet` появятся исходники сервиса, включая обработчики и типы запросов.

Как создать заготовку API-описания?

Выполните `goctl api -o greet.api`. Отредактируйте созданный файл, указав маршруты и типы данных, затем передайте его генератору сервера или клиента.

Что сделать после генерации?

В каталоге сервиса допишите обработку запросов, затем выполните `go mod tidy`, `go build ./...` и `go test ./...`. Ошибки сборки и тестов разбираются до запуска сервиса.

Как получить Java-клиент?

Для того же примера есть `goctl api java -api greet.api -dir greet`. Клиентский код создается из контракта `greet.api`; его можно передать разработчику приложения.

Как проверить установленный инструмент?

Выполните `goctl --version` в том же окружении, где работает агент.

Обсуждение

Вопросов и отзывов пока нет.

Кодовый агент для терминала на Go: модели GLM, DeepSeek и локальный Ollama, 59 встроенных инструментов и MCP

CLIШирокий доступ110Звезды репозитория
Официальный

Короткий скилл от Vercel Labs: находит или ставит компилятор Zero и подгружает инструкции строго под его версию, чтобы агент правил программу через граф

СкиллШирокий доступ5,4 тыс.Звезды репозитория

CLI хранит RFC, ADR и задачи в TOML внутри репозитория и не дает агенту закрыть работу без пройденных проверок

CLIРасширенный доступ277Звезды репозитория

Терминальный агент для кодинга на Rust: четыре режима прав, чекпоинты, субагенты, скиллы, хуки, MCP и локальные модели

CLIШирокий доступ151Звезды репозитория

ZCF

ZCF - Zero-Config Code Flow

CLI, который в один запуск настраивает Claude Code и Codex: рабочие процессы, агенты, скиллы, MCP и выбор провайдера

CLIРасширенный доступ6,1 тыс.Звезды репозитория

MCP-сервер и CLI на Go: агент ведет в репозитории индекс кода и схемы базы, хранит его в Git и читает целиком перед каждой задачей

MCP-серверШирокий доступ1,9 тыс.Звезды репозитория

Коротко о README

В примере README после генерации показана структура файлов: маршруты находятся в `internal/handler`, обработка запроса дописывается в `internal/logic`.

Бейдж для README

Сообщить о проблеме