Files
xiaolajiaoyyds 6f71df4849 Initial open-source release
多平台账号批量注册系统,支持 OpenAI / Grok / Kiro / Gemini 平台的全自动注册。

Features:
- 用户名/密码注册登录(首个用户自动管理员)
- JWT 认证 + bcrypt 密码加密
- 积分系统与多用户管理
- HuggingFace Space 弹性 Worker 节点管理
- Cloudflare Worker 负载均衡
- 实时日志推送(SSE/WebSocket)
- 管理后台(用户管理、系统设置、代理池、卡池)

Tech Stack: Go 1.25 / Gin / GORM / PostgreSQL / Vue 3 / Vite / TailwindCSS
2026-03-22 03:44:42 +08:00

57 lines
1.2 KiB
Go

package worker
import "context"
// ProxyEntry 代理配置
type ProxyEntry struct {
HTTP string `json:"http"`
HTTPS string `json:"https"`
}
// Config 平台配置(各平台自定义字段)
type Config map[string]string
// RegisterOpts 注册循环参数
type RegisterOpts struct {
Proxy *ProxyEntry
Config Config
LogCh chan<- string
OnSuccess func(email string, credential map[string]interface{})
OnFail func()
}
// Worker 平台注册器接口
type Worker interface {
// PlatformName 返回平台标识
PlatformName() string
// ScanConfig 获取/验证平台配置(cfg 包含已注入的系统设置)
ScanConfig(ctx context.Context, proxy *ProxyEntry, cfg Config) (Config, error)
// RegisterOne 执行一次注册
RegisterOne(ctx context.Context, opts RegisterOpts)
}
// 平台注册表
var Registry = map[string]Worker{}
// 平台显示名
var Labels = map[string]string{
"grok": "Grok",
"openai": "OpenAI",
"openai_team": "OpenAI Team",
"kiro": "Kiro",
"gemini": "Gemini",
}
// Register 注册平台 Worker
func Register(w Worker) {
Registry[w.PlatformName()] = w
}
// Get 获取平台 Worker
func Get(platform string) (Worker, bool) {
w, ok := Registry[platform]
return w, ok
}