Files
Atlas/internal/service/app.go
T
renjue f920f465ed
CI / docker (push) Successful in 2m28s
实现 Atlas AI 平台一期能力并完成品牌化改造。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 23:22:19 +08:00

42 lines
1.2 KiB
Go

package service
import (
"github.com/rose_cat707/Atlas/internal/provider"
"github.com/rose_cat707/Atlas/internal/service/asset"
"github.com/rose_cat707/Atlas/internal/service/chat"
"github.com/rose_cat707/Atlas/internal/service/invoke"
"github.com/rose_cat707/Atlas/internal/service/reqlog"
"github.com/rose_cat707/Atlas/internal/service/taskevents"
"github.com/rose_cat707/Atlas/internal/store"
)
type App struct {
Store *store.Store
DataDir string
Router *provider.Router
Models *provider.ModelsService
TaskEvents *taskevents.Hub
Invoke *invoke.Service
Chat *chat.Service
Assets *asset.Signer
ReqLog *reqlog.Logger
}
func NewApp(st *store.Store, dataDir string, signSecret string) *App {
logger := reqlog.New(st)
router := provider.NewRouter(st, logger)
models := provider.NewModelsService(st, router)
taskEvents := taskevents.NewHub()
return &App{
Store: st,
DataDir: dataDir,
Router: router,
Models: models,
TaskEvents: taskEvents,
Invoke: invoke.NewService(st, router, models, taskEvents),
Chat: chat.NewService(st, router, models),
Assets: asset.NewSigner(signSecret),
ReqLog: logger,
}
}