ratatoskr-go: стартовый каркас (Go-бинарь, CI, structure)
All checks were successful
build-test / build (push) Successful in 47s

This commit is contained in:
Hermes
2026-08-14 08:53:57 +05:00
commit 53cf901707
7 changed files with 171 additions and 0 deletions

44
cmd/ratatoskr/main.go Normal file
View File

@@ -0,0 +1,44 @@
// Command ratatoskr — оркестратор конвейера Ratatoskr (единственный бинарь).
//
// Стартовый каркас: точка входа + заглушки пакетов. Полная логика
// (диалог, аналитик, research, feedback, webhook) наполняется по мере
// переезда с Python.
package main
import (
"flag"
"fmt"
"log"
"os"
"github.com/kamelion/ratatoskr-go/internal/app"
)
func main() {
cfg := flag.String("config", "", "путь к config файлу (по умолчанию — env)")
version := flag.Bool("version", false, "показать версию и выйти")
flag.Parse()
if *version {
fmt.Println("ratatoskr-go dev (переезд с Ratatoskr Python)")
return
}
// Composition root: читает конфиг (env/config), настраивает DI.
a, err := app.New(*cfg)
if err != nil {
log.Fatalf("app init: %v", err)
}
// Пока: заглушка. Здесь будет:
// - запуск Telegram-gateway (диалог)
// - http-сервер webhook (+ /feedback, /status)
// - воркер: обработка issues → opencode-субагенты → PR
_ = a
os.Exit(run())
}
func run() int {
fmt.Fprintln(os.Stderr, "ratatoskr-go: каркас готов, конвейер не подключён")
return 0
}