Skip to content

ezhigval/Go_Assist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

47 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

License: MIT Go Version Status Telegram

Modulr (Go_Assist)

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ экосистСмы. Π‘ΠΎΠ±ΠΈΡ€Π°ΠΉ. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΠΉ. ΠœΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠΉ.

Event-driven, context-aware, AI-orchestrated monorepo Π½Π° Go + React + Python. Π‘ΠΎΠ±ΠΈΡ€Π°ΠΉ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ассистСнт ΠΈΠ· LEGO-ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ: финансы, ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ, Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€, знания ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² своСй сфСрС ΠΆΠΈΠ·Π½ΠΈ (personal, family, business, health), Π½ΠΎ связи ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ автоматичСски строятся Ρ‡Π΅Ρ€Π΅Π· EventBus ΠΈ AI.


2.0 Philosophy & Principles

  • LEGO-Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°: ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, ΠΎΠ±Ρ‰Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· EventBus
  • Event-First: нулСвая ΡΠ²ΡΠ·Π°Π½Π½ΠΎΡΡ‚ΡŒ, Π»Ρ‘Π³ΠΊΠΎΠ΅ тСстированиС, Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
  • ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π½Π°Ρ изоляция: personal != family != business, Π½ΠΎ связи Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‡Π΅Ρ€Π΅Π· AI
  • Π“ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ AI: OpenAI для MVP -> Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ для ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π°
  • ΠŸΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠΊΠΈΠ΄Π°ΡŽΡ‚ сСрвСр Π±Π΅Π· явного согласия
  • ΠŸΡ€ΠΎΠ³Ρ€Π΅ΡΡΠΈΠ²Π½Ρ‹ΠΉ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄: Telegram Mini App -> PWA -> ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ -> дСсктопы

3.0 Architecture

Frontend Layer
    |
Transport Layer (Telegram Bot API / HTTP / WebSocket)
    |
Core Layer (EventBus | Orchestrator | AI Engine | State)
    |
Domain Modules (finance | calendar | tracker | knowledge | ...)
    |
Data Layer (PostgreSQL | Redis | Vector DB | Local Storage)

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

  • core/events/ - EventBus для систСмы
  • core/distributed/ - foundation для broker-backed lanes ΠΈ consumer groups
  • core/orchestrator/ - Валидация Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ AI
  • core/aiengine/ - РССстры ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ
  • plugins/ - versioned registry для process/WASM plugin manifests с entry/permission guardrails
  • Domain ΠΌΠΎΠ΄ΡƒΠ»ΠΈ - Π˜Π·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ°

ДокумСнтация:


4.0 Ecosystem: Contexts Γ— Operations

Operation \ Context personal family business health travel pets
finance Π±ΡŽΠ΄ΠΆΠ΅Ρ‚, подписки совмСстныС Ρ‚Ρ€Π°Ρ‚Ρ‹ ΠΏΡ€ΠΈΠ±Ρ‹Π»ΡŒ/расходы страховки, БАДы Π±ΠΈΠ»Π΅Ρ‚Ρ‹, Π²ΠΈΠ·Ρ‹ Π²Π΅Ρ‚ΠΊΠ»ΠΈΠ½ΠΈΠΊΠ°, ΠΊΠΎΡ€ΠΌ
calendar Π»ΠΈΡ‡Π½ΠΎΠ΅ врСмя ΠΊΡ€ΡƒΠΆΠΊΠΈ, ΡƒΠΆΠΈΠ½Ρ‹ встрСчи, Π΄Π΅Π΄Π»Π°ΠΉΠ½Ρ‹ ΠΏΡ€ΠΈΡ‘ΠΌΡ‹ Π²Ρ€Π°Ρ‡Π° Π²Ρ‹Π»Π΅Ρ‚Ρ‹, экскурсии ΠΏΡ€ΠΈΠ²ΠΈΠ²ΠΊΠΈ, ΠΏΡ€ΠΎΠ³ΡƒΠ»ΠΊΠΈ
tracker ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡ΠΊΠΈ, Ρ†Π΅Π»ΠΈ домашниС Π΄Π΅Π»Π° спринты, OKR Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ, Π΄ΠΈΠ΅Ρ‚Π° Ρ‡Π΅ΠΊ-листы сборов ΡƒΡ…ΠΎΠ΄, дрСссировка
knowledge Π΄Π½Π΅Π²Π½ΠΈΠΊ, ΠΈΠ΄Π΅ΠΈ Ρ€Π΅Ρ†Π΅ΠΏΡ‚Ρ‹, ΠΏΡ€Π°Π²ΠΈΠ»Π° Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Ρ‹, Π³Π°ΠΉΠ΄Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ, симптомы Π³ΠΈΠ΄Ρ‹, Ρ„Ρ€Π°Π·Ρ‹ ΠΏΠΎΡ€ΠΎΠ΄Π°, Ρ€Π°Ρ†ΠΈΠΎΠ½
contacts Π΄Ρ€ΡƒΠ·ΡŒΡ, экспСрты родствСнники, учитСля ΠΊΠΎΠ»Π»Π΅Π³ΠΈ, ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ Ρ‚Ρ€Π΅Π½Π΅Ρ€Ρ‹, Π²Ρ€Π°Ρ‡ΠΈ Π³ΠΈΠ΄Ρ‹, ΠΏΠΎΠΏΡƒΡ‚Ρ‡ΠΈΠΊΠΈ Π²Π΅Ρ‚Π΅Ρ€ΠΈΠ½Π°Ρ€Ρ‹, Π³Ρ€ΡƒΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ кросс-связи:
Π—Π°ΠΌΠ΅Ρ‚ΠΊΠ°: "ΠšΡƒΠΏΠΈΡ‚ΡŒ ΠΌΠΎΠ»ΠΎΠΊΠΎ ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ Π΄ΠΎΠΌΠΎΠΉ" -> AI распознаёт ΠΈΠ½Ρ‚Π΅Π½Ρ‚ ->
calendar/ ставит Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ + finance/ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠ΅Ρ‚ Π±ΡŽΠ΄ΠΆΠ΅Ρ‚ +
logistics/ строит ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ°Π³Π°Π·ΠΈΠ½ -> всС события Π² EventBus.


5.0 AI-Subsystem

Π“ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ: Remote API (MVP) <-> Local Models (Prod)

Component Task Technologies
AI Gateway ΠœΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ запросов, PII-рСдакция Go, gRPC, middleware
Model Registry РССстры ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, вСрсионированиС, health-checks YAML config, Prometheus
Domain Services Ѐинансы, Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΠ΅, логистика, знания Python, FastAPI, scikit-learn, ONNX
Feedback Loop ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° Ρ„ΠΈΠ΄Π±Π΅ΠΊΠ΅, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ confidence Async queue, batch training
Vector Memory Долгосрочный контСкст, ассоциации Chroma/Qdrant, embeddings

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ:

  • ВсС внСшниС запросы проходят PII-Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΡŽ
  • scope-изоляция: Π΄Π°Π½Π½Ρ‹Π΅ personal Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π² business
  • ΠŸΡ€ΠΈ auth_required оркСстратор Π½Π΅ dispatch'ΠΈΡ‚ Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ v1.* Π±Π΅Π· Π²Π°Π»ΠΈΠ΄Π½Ρ‹Ρ… Ρ€ΠΎΠ»Π΅ΠΉ; guest допускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ систСмным событиям
  • confidence < 0.7 -> Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ подтвСрТдСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
  • Π›ΠΎΠ³ΠΈ Π±Π΅Π· ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π°ΡƒΠ΄ΠΈΡ‚ всСх Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

ДокумСнтация:


6.0 Frontend & Platforms

ΠŸΡ€ΠΎΠ³Ρ€Π΅ΡΡΠΈΠ²Π½ΠΎΠ΅ усилСниС: ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ΄ -> всС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

Platform Status Technologies
Telegram Mini App MVP React, @twa-dev/sdk, Vite
PWA (Web) v2.0 foundation React, Vite PWA, local control plane snapshot
iOS / Android ΠŸΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ React Native + Capacitor
Desktop (Win/macOS/Linux) ΠŸΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Tauri (Rust + React)
Wearables (watchOS/Wear OS) ИдСя НативныС ΠΊΠΎΠΌΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ:

  • ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π½Π°Ρ навигация: ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°ΠΉ сфСры ΠΆΠΈΠ·Π½ΠΈ Π² ΠΎΠ΄ΠΈΠ½ ΠΊΠ»ΠΈΠΊ
  • Control Plane: broker lanes, plugin registry ΠΈ scope presets ΡƒΠΆΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² web-слоС Π±Π΅Π· ΠΏΡ€Π°Π²ΠΊΠΈ ΠΊΠΎΠ΄Π°; ΠΏΡ€ΠΈ нСобходимости web/PWA ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΈΠ² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Go-backed operator API (cmd/controlplane), Π° Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½Ρ‹ΠΉ snapshot для backend ΠΈ local fallback хранится Π² ΠΎΠ±Ρ‰Π΅ΠΌ controlplane/default_snapshot.json. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ экран dashboard Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ operator diagnostics ΠΈΠ· /api/health: mode, snapshot freshness, persist path ΠΈ plugin manifest source/count, Π° module/plugin cards ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ опСраторскиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ прямо ΠΈΠ· UI.
  • Визуализация связСй: ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ связанныС сущности
  • ΠžΡ„Π»Π°ΠΉΠ½-ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ: ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, синхронизация ΠΏΡ€ΠΈ появлСнии сСти
  • ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΉ UI: ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ = бэкСнд-ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ 90%+

ДокумСнтация:


7.0 Quick Start

ВрСбования

  • Go 1.21+
  • Node.js 18+ / npm 9+
  • Docker + Docker Compose (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ, для локального AI-стСка)
  • PostgreSQL 15+ (ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Supabase free tier)

1. ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

git clone https://github.com/ezhigval/Go_Assist.git
cd Go_Assist

2. Настройка окруТСния

# Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΎΠ²
cp .env.example .env
cp config/config.example.yaml config/config.yaml

# Π—Π°ΠΏΠΎΠ»Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ для локального запуска):
# TELEGRAM_TOKEN=your_bot_token
# DB_HOST=localhost
# DB_PORT=5432
# DB_NAME=telegram_bot
# DB_USER=postgres              # Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ quick start
# DB_PASS=
# DB_SSLMODE=disable
# DB_REQUIRE_RLS_EFFECTIVE=false  # staging/production: true послС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° app role
# AI_PROVIDER=local   # ΠΈΠ»ΠΈ ΠΎΡΡ‚Π°Π²ΡŒ unset/"stub" для Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ fallback
# AI_PROVIDER_BASE_URL=http://127.0.0.1:8000
# AI_ALLOW_STUB_FALLBACK=true
#
# Для RLS-effective transport/databases setup:
# go run ./databases/cmd/databases app-role-sql -role=modulr_app
# Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈ SQL ΠΏΠΎΠ΄ DBA/owner role, Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈ DB_USER/DB_PASS
# Π·Π°Ρ‚Π΅ΠΌ Π²ΠΊΠ»ΡŽΡ‡ΠΈ DB_REQUIRE_RLS_EFFECTIVE=true
# ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒ go run ./databases/cmd/databases rls-status -require-effective
# Команда ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ readiness ΠΏΠΎ event_journal/stats/sessions/auth_sessions
#
# ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ для transport auth:
# TELEGRAM_AUTH_REQUIRED=true
# TELEGRAM_AUTH_ADMIN_IDS=12345,67890
# TELEGRAM_AUTH_ALLOWED_SCOPES=business,travel

3. Запуск ядра (Go)

cd core
go mod tidy
go run main.go
# Runtime ΠΏΠΎΠ΄Π½ΠΈΠΌΠ΅Ρ‚ orchestrator + bus bridge + Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ
# ΠΈ ΠΏΡ€ΠΎΠ³ΠΎΠ½ΠΈΡ‚ demo-сообщСниС Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ‰ΠΈΠΉ message flow
# Π’ Π»ΠΎΠ³Π΅ Ρ‚Π°ΠΊΠΆΠ΅ появятся scope_counts ΠΈ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ trace-summary ΠΈΠ· metrics/

ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ:

MODULR_DEMO_TEXT="Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΠΌΠΎΠ»ΠΎΠΊΠΎ послС Ρ€Π°Π±ΠΎΡ‚Ρ‹" \
MODULR_DEMO_SCOPE=personal \
go run main.go

4. Запуск frontend (Telegram Mini App)

cd frontend
npm install
npm run dev:telegram
# ΠžΡ‚ΠΊΡ€ΠΎΠΉ Π±ΠΎΡ‚Π° Π² Telegram -> Π½Π°ΠΆΠΌΠΈ "Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅"

ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ для web/PWA operator flow с Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ backend projection:

go run ./cmd/controlplane
# ΠŸΠΎΠ΄Π½ΠΈΠΌΠ°Π΅Ρ‚ /api/health, /api/scopes, /api/control-plane Π½Π° :8080
# /api/health Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ operator status: mode, snapshot freshness, persist path, plugin manifest metadata
# frontend ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ…ΠΎΠ΄ΠΈΡ‚ Π² этот адрСс Ρ‡Π΅Ρ€Π΅Π· VITE_API_BASE_URL=http://localhost:8080/api
# По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ сохраняСт operator state Π² data/controlplane/snapshot.json
# По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ demo plugin manifests ΠΈΠ· plugins/manifests
# ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ POST /api/control-plane/plugins/reload для runtime refresh manifests Π±Π΅Π· рСстарта backend
# МоТно ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· CONTROL_PLANE_STATE_PATH=/abs/or/relative/path.json
# МоТно ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ manifest source Ρ‡Π΅Ρ€Π΅Π· CONTROL_PLANE_PLUGIN_DIR=/path/to/manifests

5. Запуск Telegram transport

cd databases
DB_AUTO_MIGRATE=false go run ./cmd/databases up
go run ./cmd/databases status

cd ../telegram
go mod tidy
go run ./cmd/telegram
# ВрСбуСтся TELEGRAM_TOKEN
# /start ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ тСкстовыС сообщСния уходят Π² runtime ingress ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ модуля
# Активный контСкст ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ /scope business (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ segment)
# ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ для PostgreSQL-backed transport persistence:
# TELEGRAM_STATE_STORE=postgres DB_HOST=localhost DB_PORT=5432 DB_NAME=telegram_bot DB_USER=modulr_app DB_PASS=...
# Для локального superuser bootstrap DB_USER=postgres Ρ‚ΠΎΠΆΠ΅ допустим, Π½ΠΎ rls-status ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅Π΄ΠΈΡ‚ ΠΎ bypass
# Для staging/production: DB_REQUIRE_RLS_EFFECTIVE=true, ΠΈΠ½Π°Ρ‡Π΅ startup Π½Π΅ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ ΠΎΡ‚ bypass Ρ€ΠΎΠ»ΠΈ
# На staging/production Π΄Π΅Ρ€ΠΆΠΈ DB_AUTO_MIGRATE=false ΠΈ запускай migrations ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ deployment step.
# Π’ этом Ρ€Π΅ΠΆΠΈΠΌΠ΅ sessions ΠΈ trace-связанный event_journal ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² databases/
# Auth ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ DB-backed auth_sessions Ρ‡Π΅Ρ€Π΅Π· databases.NewAuthSessionStore(db)
# Доступны transport-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ /login, /whoami, /logout; ΠΏΡ€ΠΈ TELEGRAM_AUTH_REQUIRED=true
# ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ сообщСния Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π²Π°Π»ΠΈΠ΄Π½ΡƒΡŽ auth session для Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ scope.
# ingress Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅Ρ‚ запрос ΠΊΠ°ΠΊ auth_required, Π° orchestrator Ρ€Π΅ΠΆΠ΅Ρ‚ dispatch Π±Π΅Π· Ρ€ΠΎΠ»Π΅ΠΉ ΠΈΠ»ΠΈ с Ρ€ΠΎΠ»ΡŒΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ событиС Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ.

6. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ AI-стСк (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ)

cd ai
docker compose -f docker-compose.local.yml up -d
# Запустит Ollama + FastAPI-сСрвисы для локального инфСрСнса

# Π—Π°Ρ‚Π΅ΠΌ для core/aiengine:
cd ..
AI_PROVIDER=local AI_PROVIDER_BASE_URL=http://127.0.0.1:8000 go run ./core
# Если local provider нСдоступСн, ΠΏΡ€ΠΈ AI_ALLOW_STUB_FALLBACK=true runtime откатится Π½Π° stub decisions.

Полная докумСнтация:


8.0 Open Source & Community

Modulr - eto otkrytyy proyekt, kotoryy razvivayetsya blagodarya soobshchestvu.

License

Код распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT.
Π’Ρ‹ моТСшь:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΈ коммСрчСских ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…
  • ΠœΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Ρ„ΠΎΡ€ΠΊΠ°Ρ‚ΡŒ
  • Π Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ с измСнСниями
  • НС нСси отвСтствСнности Π·Π° использованиС "ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ"

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° вСдётся Π½Π° энтузиазмС. Π›ΡŽΠ±Π°Ρ ΠΏΠΎΠΌΠΎΡ‰ΡŒ ускоряСт Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅:

  • GitHub Sponsors
  • Open Collective (placeholder)
  • Crypto: USDT/TRC20 (placeholder)

БрСдства ΠΈΠ΄ΡƒΡ‚ Π½Π°:

  • Π‘Π΅Ρ€Π²Π΅Ρ€Ρ‹ ΠΈ инфраструктуру для Π΄Π΅ΠΌΠΎ/тСстов
  • Π’ΠΎΠΊΠ΅Π½Ρ‹ для Π²Π½Π΅ΡˆΠ½ΠΈΡ… AI-API (Π½Π° этапС MVP)
  • Π”ΠΈΠ·Π°ΠΉΠ½, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‹
  • ΠžΠΏΠ»Π°Ρ‚Ρƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΎΡ€ΠΎΠ² Π·Π° слоТныС Π·Π°Π΄Π°Ρ‡ΠΈ

ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΡ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π΅

Π˜Ρ‰Π΅ΠΌ энтузиастов для развития ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

Роль Π—Π°Π΄Π°Ρ‡ΠΈ Stack
Go Backend Π―Π΄Ρ€ΠΎ, EventBus, ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, gRPC Go, pgx, context, sync
React Frontend UI, PWA, Telegram Mini App React, TypeScript, Tailwind
Python/AI Π”ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, инфСрСнс, ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ FastAPI, scikit-learn, ONNX
DevOps Docker, CI/CD, monitoring, deploy Docker, GH Actions, Prometheus
Tech Writer ДокумСнтация, Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»Ρ‹, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‹ Markdown, Docusaurus
QA / Testing ВСсты, Π±Π°Π³-Ρ€Π΅ΠΏΠΎΡ€Ρ‚Ρ‹, ΡŽΠ·Π°Π±ΠΈΠ»ΠΈΡ‚ΠΈ Vitest, Playwright, manual

Условия:

  • Π£Π΄Π°Π»Ρ‘Π½Π½ΠΎ, Π³ΠΈΠ±ΠΊΠΈΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ
  • Π Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ production-Π·Π°Π΄Π°Ρ‡ΠΈ, мСнторство
  • ВлияниС Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΠΈ Ρ€ΠΎΠ°Π΄ΠΌΠ΅ΠΏ
  • ΠŸΡ€ΠΈΠ·Π½Π°Π½ΠΈΠ΅ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΌΠ΅Ρ€Ρ‡, доля Π² ΠΏΡ€Π΅ΠΌΠΈΡƒΠΌ-модулях (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ)

Как Π½Π°Ρ‡Π°Ρ‚ΡŒ:

  1. Π˜Π·ΡƒΡ‡ΠΈ PROJECT_RULES.md ΠΈ CONTRIBUTING.md
  2. Найди Π·Π°Π΄Π°Ρ‡Ρƒ с ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ good first issue
  3. Напиши в GitHub Discussions или в Telegram @ezhigval
  4. Π‘ΠΎΠ·Π΄Π°ΠΉ Ρ„ΠΎΡ€ΠΊ, сдСлай pull-request

9.0 Roadmap & Status

Π­Ρ‚Π°ΠΏ Бтатус ОписаниС
ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Complete Π―Π΄Ρ€ΠΎ, ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, AI, frontend
ДокумСнтация Complete ΠŸΡ€Π°Π²ΠΈΠ»Π°, экосистСма, Ρ€ΠΎΠ°Π΄ΠΌΠ΅ΠΏΡ‹
ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ ядра Complete EventBus, Orchestrator, ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹
РСализация MVP In Progress Telegram Mini App + 3 модуля (Q1 2025)
Π“ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ AI Planned Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ + feedback loop (Q2 2025)
PWA + ΠΎΡ„Π»Π°ΠΉΠ½-Ρ€Π΅ΠΆΠΈΠΌ Planned (Q3 2025)
ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния Planned iOS/Android (Q4 2025)
Premium-ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Planned ΠœΠΎΠ½Π΅Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡ (2026)

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π½:


10.0 Contacts & Support

  • Основной ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚: @ezhigval (Telegram)
  • ΠžΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡ: GitHub Discussions
  • Π‘Π°Π³-Ρ€Π΅ΠΏΠΎΡ€Ρ‚Ρ‹: GitHub Issues
  • Email: hello@modulr.dev (placeholder)
  • Π‘Π°ΠΉΡ‚: modulr.dev (placeholder)

НС пиши прилоТСния. Π‘ΠΎΠ±ΠΈΡ€Π°ΠΉ ΠΈΡ….

Modulr - инфраструктура для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ†Π΅Π½ΠΈΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ, ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ.

About

🧱 ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Π°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° для ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ экосистСмы. Π‘ΠΎΠ±ΠΈΡ€Π°ΠΉ Тизнь ΠΈΠ· ΠΊΠΈΡ€ΠΏΠΈΡ‡ΠΈΠΊΠΎΠ²: Π·Π°Π΄Π°Ρ‡ΠΈ, финансы, ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ, знания. Go + React + AI. Open Source.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors