Scribe.

A universal TUI & web agent that connects to any llama.cpp server and uses RAG + semantic memory to research, write, and remember โ€” across sessions.

๐ŸŒ English ยท ็ฎ€ไฝ“ไธญๆ–‡

What it does

Universal LLM adapter

Point it at any OpenAI-compatible endpoint โ€” local llama.cpp, Ollama, LM Studio, or remote.

Rich TUI & web UI

A terminal interface (Rich + Textual) and a streaming FastAPI web chat with login.

Cross-session memory

SME (Semantic Memory Engine) recalls your last session so context survives restarts.

RAG over your docs

Local embeddings (multilingual-e5) + LanceDB for semantic search across your library.

Sandboxed file tools

The model gets write/read/list tools scoped strictly to a per-user workspace.

Modular skills

Deep-research, writer, and wiki-memory skills โ€” drop in more as SKILL.md modules.

Quick start

# 1. Clone & install
git clone https://github.com/pedjaurosevic/scribe-ai.git
cd scribe-ai
./scripts/install.sh        # installs the package + config + ~/scribe-workspace

# 2. Start your llama-server (or use any OpenAI-compatible endpoint)
./scripts/start-server.sh

# 3. Chat in the terminal โ€ฆ
scribe chat

# โ€ฆ or launch the web UI
scribe web                  # http://localhost:8765

Configure the endpoint in ~/.config/scribe/config.toml or via SCRIBE_BASE_URL / SCRIBE_MODEL env vars.

Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ SCRIBE TUI / WEB โ”‚ โ”‚ Rich ยท Textual ยท FastAPI โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ CORE KERNEL โ”‚ โ”‚ Session Manager ยท Skills ยท Config โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ LLM ADAPTER LAYER โ”‚ โ”‚ OpenAI-compatible (llama.cpp) โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ MEMORY LAYER โ”‚ โ”‚ SME (cross-session) ยท RAG (documents) โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ TOOLS LAYER โ”‚ โ”‚ web_search ยท web_fetch ยท fs ยท bash โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Philosophy