Aska
bea29d3b73
style(frontend): redesign with Miuix HyperOS design language
...
- Color system: Miuix dark tokens (primary #277AF7, bg #242424 , surface #000 )
- Components: rounded-full buttons, squircle cards (18px), glass header
- Messages: blue user bubbles, dark AI bubbles with typing animation
- Admin dashboard: stat cards with real-time service status
- Login: centered logo with gradient shadow, HyperOS input fields
- Smooth transitions and scale-on-press interactions
2026-08-12 16:41:34 +08:00
Aska
17ef73bcbe
feat(bridge): add multi-platform bridge — QQ, Telegram, Discord, Webhook
...
- platform-bridge: unified message model + Adapter interface
- qq/adapter: OBv11 WebSocket protocol with @mention detection
- telegram/discord: stub adapters with send capability
- webhook: HTTP POST receiver for generic webhook integration
- Router: message routing from platform → AI-Core → back
- Group chat rules: 500 char limit, 3s gap, silence keywords
- main.go: conditional adapter loading via env vars
2026-08-12 12:30:55 +08:00
Aska
7e3ec8da93
docs(api): add REST API reference and WebSocket protocol docs
...
- Docs/api/rest-api.md: all 15 endpoints with curl examples
- Docs/api/websocket.md: WS protocol, message types, reconnect strategy
2026-08-12 12:22:27 +08:00
Aska
fbb331ed4b
feat(auth): replace stub auth with real JWT + bcrypt
...
- RealAuthManager: JWT signing/validation + bcrypt password hashing
- MemUserStore: in-memory user store with default admin
- Register endpoint: user creation with hashed password
- Login endpoint: bcrypt verification + JWT generation
- AuthManager interface extended with Login/Register methods
2026-08-12 12:21:36 +08:00
Aska
6811480786
feat(gateway): wire real services into Gateway API handlers
...
- Router accepts full Dependencies (memory/voice/orchestrator/WShub)
- Memory API: CRUD + search endpoints with PostgreSQL persistence
- Voice API: STT/TTS endpoints
- Admin dashboard: real uptime + service status
- WebSocket chat: routes to AI-Core orchestrator pipeline
- APIAdapter bridges memory domain model to REST interface
- Smoke test: memory CRUD + session creation verified
2026-08-12 12:04:31 +08:00
Aska
4a71965686
feat(frontend): add React SPA with chat, auth, and admin pages
...
- Vite 6 + React 19 + TypeScript + Tailwind 4 + Zustand 5
- Login page with JWT auth
- Chat interface: MessageList, ChatInput, ChatContainer
- WebSocket hook with auto-reconnect and exponential backoff
- Sidebar with new chat button + session navigation
- Admin dashboard placeholder
- 57 modules, 242KB JS, TypeScript zero errors
2026-08-12 11:47:22 +08:00
Aska
192144563b
feat(plugins): add 10 tool plugins and wire full service stack in main.go
...
- plugins: calculator, datetime, crypto, random, text, json, markdown
- plugins: web-search (SearXNG stub), web-fetch, file, http (stubs)
- main.go: full wiring — config→db→nats→plugins→voice→memory→
persona→llm→context→subsession→orchestrator→gateway→ws
- 15 packages passing, 11 plugins loaded at startup
2026-08-12 11:37:36 +08:00
Aska
3b3e5a0697
feat(ai-core): add LLM orchestration engine
...
- model: shared data types (Message, Intent, StreamToken, LLMMessage)
- persona: YAML/Raw loading + system prompt injection
- llm: OpenAI-compatible adapter with streaming + semantic cache
- context: sliding window context store with token budgeting
- subsession: parallel provider dispatch + review message parser
- orchestrator: intent analysis pipeline (IoT/greeting/chat/memory)
- background: autonomous thinking engine
- 20+ tests, build + vet clean, ~130 total tests
2026-08-09 21:21:27 +08:00
Aska
99806fefad
feat: add gateway API, voice service, WebSocket hub, and startup entry
...
- services/gateway/api: net/http router with JWT auth, stub login, 6 tests
- services/gateway/ws: WebSocket hub with echo support
- services/voice: STT/TTS provider chain with fallback, 6 tests
- cmd/cyrene/main.go: single binary startup, 108 tests total
- Smoke test: health check + login verified on :8080
2026-08-09 21:09:43 +08:00
Aska
81ebdb910c
feat(memory): complete memory service with passing tests
...
- model: Memory struct with categories/decay/keywords
- repository: PG CRUD + keyword search + table migration SQL
- service: dedup (Jaccard), keyword extraction, decay formula
- 7 tests (3 DB integration + 4 unit), 96 total, vet clean
2026-08-09 20:51:01 +08:00
Aska
7295556c59
feat(services): add memory service — model, repository, service layer
...
- services/memory/model: Memory struct with categories and decay
- services/memory/repository: PostgreSQL CRUD + keyword search
- services/memory/service: dedup, decay, keyword extraction
- tests coming in follow-up commit
2026-08-09 20:50:01 +08:00
Aska
aee8db9b3f
feat(internal): add platform detection and auth packages
...
- internal/platform: cross-platform path detection, 6 tests
- internal/auth: JWT generation/validation + bcrypt, 8 tests
- 89 total tests, build + vet clean
2026-08-09 20:46:41 +08:00
Aska
ca106f71ae
feat(internal): add NATS abstraction and DB connection manager
...
- internal/nats: Connection interface + InProcessConn, 7 tests
- internal/db: PostgreSQL connection pool + migration runner, 5 tests
- 75 total tests, build + vet clean
2026-08-09 20:45:19 +08:00
Aska
750d594055
feat(plugin): add plugin interface system and iot-mock implementation
...
- internal/plugin: Plugin/IoTProvider/ToolProvider/RAGProvider interfaces
- internal/plugin: Registry with type-safe auto-detection, 11 tests
- plugins/iot-mock: 8 simulated smart home devices, 11 tests
- 63 total tests, build + vet clean
2026-08-09 20:38:37 +08:00
Aska
7943e290ec
feat(internal): add foundational packages — config, logger, errors
...
- config: env-based loading with startup validation, 13 tests
- logger: structured slog wrapper with redaction, 10 tests
- errors: unified AppError model with HTTP mapping, 18 tests
- 41 tests total, build + vet clean
2026-08-09 20:35:42 +08:00
Aska
b69b74435a
docs: add comprehensive README and update project structure
...
- Replace placeholder README with full project overview
- All DevDocs modules completed (7 backend + 4 cross-cutting)
- Development constraints document added
2026-08-09 20:21:54 +08:00
Aska
14d5d6e555
chore: init Cyrene_v2 project structure and DevDocs
...
- Create directory structure for backend, frontend, deployment, tests
- .gitignore with DevDocs/ excluded from version control
- DevDocs: 00-overview, 01-cross-platform, 02-dev-constraints
- DevDocs decisions: 002-communication (NATS), 003-plugin-architecture
- DevDocs modules: ai-core analysis, gateway analysis
2026-08-09 20:18:56 +08:00
AskaEth
2af560913d
Initial commit
2026-08-09 20:04:49 +08:00