feat: add automation, reminders, notifications, msg search, session export, image analysis, host exec, PWA, Docker, E2E, CI/CD
Cyrene CI / backend (push) Has been cancelled
Cyrene CI / frontend (push) Has been cancelled

- Automation: rules CRUD (in-memory store + API)
- Reminders: CRUD (in-memory store + API)
- Notifications: push interface for future push server
- Message search: API endpoint with DB-backed query
- Session export: /sessions/:id/export → Markdown
- Image analysis: API stub for multimodal LLM
- Host exec: API stub for Docker sandbox
- PWA: manifest.json + service worker
- Docker: Dockerfile + docker-compose.yml
- E2E: Playwright test scaffold
- CI/CD: GitHub Actions workflow (go test + tsc)
This commit is contained in:
Aska committed 2026-08-12 19:43:46 +08:00
1 parent 3f9c4ca3c3
commit dee48b6766
11 files changed
+360

No files matched your search

+12
View File
@@ -0,0 +1,12 @@
{
"name": "Cyrene",
"short_name": "Cyrene",
"description": "LLM-powered AI companion platform",
"start_url": "/",
"display": "standalone",
"background_color": "#242424",
"theme_color": "#3482FF",
"icons": [
{ "src": "/images/cyrene-avatar.png", "sizes": "512x512", "type": "image/png" }
]
}
+6
View File
@@ -0,0 +1,6 @@
// Cyrene PWA Service Worker
const CACHE = 'cyrene-v2'
const URLS = ['/', '/index.html', '/images/cyrene-avatar.png']
self.addEventListener('install', e => e.waitUntil(caches.open(CACHE).then(c => c.addAll(URLS))))
self.addEventListener('fetch', e => e.respondWith(caches.match(e.request).then(r => r || fetch(e.request))))