The Briefing system was retired weeks ago and replaced with the conversational Journal, but several current-state docs still described it as live. Updates: architecture.md - settings keys: briefing_enabled / briefing_locations / office_days → journal_config (JSON: locations, temp_unit, prep schedule) - conversation_type: chat/briefing/mcp → chat/journal/mcp - briefing_date column → day_date on Conversation - "Briefing-Related Tables" section: dropped rss_feeds + rss_items rows (retired with PR #43); kept weather_cache and clarified that lat/lon now live in journal_config.locations, not on the cache row - routes/chat.py description: dropped trailing "briefing conversation routes" mention - routes/briefing.py → routes/journal.py with the current endpoint shape (config / today / day / days / weather / moments / trigger- prep) - services/briefing_pipeline + scheduler + conversations + profile → services/journal_prep + journal_pipeline + journal_scheduler + journal_search/moments + user_profile.build_profile_context features.md - "Daily Briefing" section rewritten as "Daily Journal": conversational, single morning prep, right rail with weather + upcoming events, profile-tab configuration, "what the assistant has learned" framing - Settings table: dropped Briefing tab row, added Profile tab row, fixed Notifications row's stale briefing-push reference api-reference.md - /api/briefing/* endpoints replaced with /api/journal/* — config, today/day/days, trigger-prep, weather (cached/current/refresh/ geocode), moments Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Fabled Scribe
A self-hosted second brain and project management application with integrated LLM capabilities. Write, organise, and act on your notes and tasks with the help of a local AI assistant — all running on your own hardware.
Features
Notes and tasks with a Markdown editor, sub-tasks, milestones, and kanban project workspaces. AI chat with streaming responses, RAG over your notes, and tool use (web search, calendar, weather). A daily briefing that digests your tasks, RSS feeds, and weather on a schedule. Knowledge graph, per-user/group sharing, PWA with push notifications, an MCP server for external AI clients, and an Android companion app.
Quick Start
Prerequisites: Docker and Docker Compose. 8 GB+ RAM recommended for LLM inference.
Download docker-compose.quickstart.yml from this repo, then:
# Optional but recommended — set a secret key
export SECRET_KEY=your-random-secret-here
docker compose -f docker-compose.quickstart.yml up -d
Open http://localhost:5000. The first user to register becomes admin. Go to Settings → General to pull an LLM model — qwen3:8b or llama3.1:8b are good starting points.
GPU: Ollama runs CPU-only by default. See the comments in
docker-compose.quickstart.ymlto enable NVIDIA GPU passthrough.
Development: To build from source, see Development.
Documentation
| Doc | Contents |
|---|---|
| Architecture | Stack, design decisions, data models, key services |
| Configuration | Environment variables, Docker Compose, production setup, security |
| Features | Detailed feature breakdown and keyboard shortcuts |
| Development | Dev workflow, CI/CD, migrations, release process |
| API Keys & MCP | API key management and Fable MCP install guide |
| SSO / OAuth | OIDC setup for Authentik, Keycloak, and other providers |
| API Reference | All REST API endpoints |
| Android App | Flutter companion app architecture and feature status |
License
This project is privately maintained.