feat: Tier 1 & 2 — Daily Note, Voice, Flashcard quota, Readwise, Calendar, Agent Gallery
Some checks failed
CI / Lint, Unit Tests & Build (push) Failing after 1m7s
CI / Deploy production (on server) (push) Has been skipped

Tier 1:
- BASIC tier: chat (10/mo) + reformulate (10/mo) désormais accessibles
- Nouveaux quotas: ai_flashcard + voice_transcribe dans tous les tiers
- /api/notes/daily : note du jour auto-créée (find or create)
- Bouton Note du Jour dans la sidebar (CalendarDays)
- Voice-to-Text dans l'éditeur (Web Speech API, bouton Mic toolbar)
- Flashcard generation → quota ai_flashcard (au lieu de reformulate)

Tier 2:
- Intégration Readwise: GET/POST/DELETE /api/integrations/readwise
- Intégration Google Calendar: OAuth flow + today's events + meeting notes
- /api/integrations/calendar + /callback
- Page /settings/integrations avec cards Calendar + Readwise
- SettingsNav: onglet Intégrations
- AgentTemplates: catégories + 4 nouveaux templates (Digest/Recap/AutoTagger/Synthesis)

Schema:
- UserAISettings.integrationTokens Json? (migration 20260529160000)
- prisma generate + migrate deploy appliqués

Fix:
- SpeechRecognition types (triple-slash @types/dom-speech-recognition)
- Notebook.create: suppression champ 'description' inexistant

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Antigravity
2026-05-29 15:14:01 +00:00
parent 79fd6553b7
commit c415d93945
20 changed files with 1271 additions and 63 deletions

View File

@@ -77,7 +77,9 @@
"clearSearch": "Clear search",
"insightsPanelBody": "Semantic map of your notes: thematic clusters, bridge notes, and connection suggestions.",
"revisionPanelBody": "Review flashcards with the SM-2 algorithm. Decks are generated from your notes.",
"backToNotebooks": "Back to notebooks"
"backToNotebooks": "Back to notebooks",
"dailyNote": "Daily Note",
"dailyNoteError": "Could not open today's note"
},
"notes": {
"title": "Notes",
@@ -2188,6 +2190,22 @@
"excalidrawGenerator": {
"name": "Diagram Generator",
"description": "Reads a note and generates a visual diagram in the Excalidraw Lab."
},
"dailyDigest": {
"name": "Daily Digest",
"description": "Summarizes your notes from the day and creates a daily recap in your main notebook."
},
"weeklyRecap": {
"name": "Weekly Recap",
"description": "Analyzes your weekly notes and produces a summary of key themes, decisions and tasks."
},
"autoTagger": {
"name": "Auto-Tagger",
"description": "Scans your notes without labels and automatically suggests relevant tags based on content."
},
"knowledgeSynthesis": {
"name": "Knowledge Synthesis",
"description": "Groups related notes by theme and creates a synthesis note with identified connections."
}
},
"runLog": {
@@ -3566,5 +3584,12 @@
"hint_insights_bridge_desc": "Bridge notes connect multiple clusters. They are highlighted because they hold your knowledge graph together.",
"hint_insights_refresh_title": "Refresh clusters",
"hint_insights_refresh_desc": "If you've added new notes, click the refresh button to recalculate the clusters with the latest content."
},
"integrations": {
"title": "Integrations"
},
"editor": {
"voiceStart": "Dictate text (microphone)",
"voiceStop": "Stop dictation"
}
}