惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threat Research - Cisco Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Register - Security
The Register - Security
A
About on SuperTechFans
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
L
LangChain Blog
N
Netflix TechBlog - Medium
量子位
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
H
Help Net Security
D
Docker
D
DataBreaches.Net
T
Tailwind CSS Blog
阮一峰的网络日志
阮一峰的网络日志
B
Blog
博客园 - 聂微东
Apple Machine Learning Research
Apple Machine Learning Research
Google DeepMind News
Google DeepMind News
The Cloudflare Blog
F
Full Disclosure
GbyAI
GbyAI
F
Fortinet All Blogs
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
人人都是产品经理
人人都是产品经理
Recent Announcements
Recent Announcements
博客园 - Franky
MongoDB | Blog
MongoDB | Blog
有赞技术团队
有赞技术团队
博客园 - 叶小钗
小众软件
小众软件
V
Visual Studio Blog
月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
The GitHub Blog
The GitHub Blog
Recorded Future
Recorded Future
J
Java Code Geeks
雷峰网
雷峰网
P
Privacy & Cybersecurity Law Blog
C
Cisco Blogs
C
Cyber Attacks, Cyber Crime and Cyber Security
AWS News Blog
AWS News Blog
Webroot Blog
Webroot Blog
美团技术团队
N
News | PayPal Newsroom
G
Google Developers Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
博客园_首页
V
Vulnerabilities – Threatpost

Hacker News: Front Page

SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads GitHub - GainSec/AutoProber: Hardware hacker’s flying probe automation stack for agent-driven target discovery, microscope mapping, safety-monitored CNC motion, probe review, and controlled pin probing. Introducing Claude Opus 4.7 Qwen Studio The Future of Everything is Lies, I Guess: Where Do We Go From Here? GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh Virginia Bans Sale of Geolocation Data Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis Ancient DNA reveals pervasive directional selection across West Eurasia [pdf] AI cybersecurity is not proof of work Moving a large-scale metrics pipeline from StatsD to OpenTelemetry / Prometheus GitHub - Nightmare-Eclipse/RedSun: The Red Sun vulnerability repository GitHub - SethPyle376/hiraeth: Local AWS emulator focused on fast integration testing, with SQS support, SQLite-backed state, and a debug-friendly web UI. A Better Ludum Dare; Or, How to Ruin a Legacy GitHub - macOS26/Agent: Any AI, replaces Claude Code, Cursor, OpenClaw. Over 18 LLM providers (Claude, OpenAI, Gemini, Ollama, Zai, HF, Qwen) wired into a native Mac app that writes code, builds Xcode projects, bumps versions, manages git, automates Safari, use AppleScript, JS or Accessibility, extend Agent! w/ MCP Servers, run tasks from your iPhone via Messages. YouTube now lets you turn off Shorts I Made a Terminal Pager Burgers | マクドナルド公式 Commands — HackerNews CLI documentation ChatGPT for Excel PiCore - Raspberry Pi Port of Tiny Core Linux Live Nation illegally monopolized ticketing market, jury finds Google Broke Its Promise to Me. Now ICE Has My Data. Founding Engineer at Adaptional | Y Combinator CRISPR takes important step toward silencing Down syndrome’s extra chromosome GitHub - saffron-health/libretto: The AI toolkit for building reliable browser automations US v. Heppner (S.D.N.Y. 2026) no attorney-client privilege for AI chats [pdf] Unexpected €54k billing spike in 13 hours: Firebase browser key without API restrictions used for Gemini requests Fragments: April 14 Cal.com Goes Closed Source: Why AI Security Is Forcing Our Decision | Cal.com - Scheduling Software for Online Bookings Laravel raised money and now injects ads directly into your agent Codex Hacked a Samsung TV Tech Valuations Back to Pre-AI Boom Levels A perfectable programming language — Soter GitHub - halfwhey/claudraband: Claude Code for the Power User Partnership through Play: Investigating How Long-Distance Couples Use Digital Games to Facilitate Intimacy Textbooks and Methods of Note-Taking in Early Modern Europe (2008) Eternity in six hours: Intergalactic spreading of intelligent life (2013) Seven countries now generate 100% of their electricity from renewable energy Tell HN: OpenAI silently removed Study Mode from ChatGPT Pro Max 5x Quota Exhausted in 1.5 Hours Despite Moderate Usage Show HN: Oberon System 3 runs natively on Raspberry Pi 3 (with ready SD card) Tell HN: docker pull fails in spain due to football cloudflare block Bring Back Idiomatic Design No one owes you supply-chain security GitHub - xsawyerx/curl-doom: DOOM, played over cURL Apple update turns Czech mate for locked-out iPhone user The Grand Line Cache TTL silently regressed from 1h to 5m around early March 2026, causing quota and cost inflation Building a Z-Machine in the worst possible language The peril of laziness lost Iran war: We spoke to the man making Lego-style AI videos that experts say are powerful propaganda AI Will Be Met With Violence, and Nothing Good Will Come of It GitHub - duguyue100/midnight-captain: Inspired by Midnight Commander, tailored to my taste. How to build a `git diff` driver · Jamie Tanna | Software Engineer Center for Responsible, Decentralized Intelligence at Berkeley The Local Universe’s Expansion Rate Is Clearer Than Ever, but Still Doesn’t Add Up - A new synthesis of astronomical measurements confirms a persistent mismatch that could point to physics beyond current models The disturbing white paper Red Hat is trying to erase from the internet – OSnews NetBlocks (@netblocks@mastodon.social) The Future of Everything is Lies, I Guess: Annoyances ‘Abhorrent’: the inside story of the Polymarket gamblers betting millions on war Productive procrastination — Max van IJsselmuiden maps, territory and LMs 447 Terabytes per Square Centimetre at Zero Retention Energy: Non-Volatile Memory at the Atomic Scale on Fluorographane Show HN: Pardonned.com – A searchable database of US Pardons 20 Years on AWS and Never Not My Job The Seasons are Wrong The FAA wants gamers to apply for air traffic control jobs Artemis II crew splashes down near San Diego after historic moon mission Why weekends are under threat We gave an AI a 3 year retail lease in SF and asked it to make a profit | Andon Labs How a dancer with ALS used brainwaves to perform live On filing the corners off my MacBooks Installing every* Firefox extension OpenClaw’s memory is unreliable, and you don’t know when it will break Steve Blank Nowhere Is Safe Chimpanzees in Uganda locked in vicious 'civil war', say researchers watgo - a WebAssembly Toolkit for Go linux/Documentation/process/coding-assistants.rst at master · torvalds/linux GitHub - callumlocke/json-formatter: Makes JSON easy to read. Founding Product Engineer at Bild AI | Y Combinator A compelling title that is cryptic enough to get you to take action on it GitHub - Keychron/Keychron-Keyboards-Hardware-Design: Industrial design files for Keychron keyboards and mice. 100+ models with CAD assets in STEP, DXF, DWG, and PDF. Source-available, with commercial use allowed for original compatible accessories within the license terms. [ANNOUNCE] WireGuardNT v0.11 and WireGuard for Windows v0.6 Released 1D-Chess Helium Is Hard to Replace Keeping a Postgres queue healthy — PlanetScale Serenity Forge (@serenityforge.com) Our response to the Axios developer tool compromise Do Americans read print books, e-books or audiobooks more? Uncharted island soon to appear on nautical charts The Problem That Built an Industry Fragments: April 2 Python Release Python install manager 26.1 Bitcoin miners are losing $19,000 on every BTC produced as difficulty drops 7.8% God sleeps in the minerals Harness engineering: leveraging Codex in an agent-first world Apple Silicon and Virtual Machines: Beating the 2 VM Limit What have been the greatest intellectual achievements? The APL Programming Language Source Code
GitHub - siddsachar/Thoth: Thoth - Personal AI Sovereignty. A local-first AI assistant with integrated tools, a personal knowledge graph, voice, vision, shell, browser automation, scheduled tasks, health tracking, and messaging channels. Run locally via Ollama or add opt-in cloud models. Your data stays on your machine.
sydsachar · 2026-05-03 · via Hacker News: Front Page

Thoth

Release CI License Platform Tests

Thoth is a local-first AI assistant for personal AI sovereignty: a desktop agent with memory, tools, workflows, design creation, messaging, plugins, and optional cloud models while your durable data stays on your machine.

It runs fully local through Ollama with 39 curated tool-calling models, or you can opt into OpenAI, Anthropic, Google AI, xAI, OpenRouter, and ChatGPT / Codex when you want frontier reasoning or do not have a GPU. API keys and in-app subscription tokens are stored in the OS credential store when available; Thoth has no account system, server, or telemetry pipeline.

🖥️ One-click install on Windows & macOS — download, run, done. No terminal, Docker, or config files required. Get it here.

Why the name "Thoth"?

In ancient Egyptian mythology, Thoth (𓁟) was the god of wisdom, writing, and knowledge — the divine scribe who recorded all human understanding. Like its namesake, this tool is built to gather, organize, and faithfully retrieve knowledge — while keeping everything under your control.


✨ Why Thoth Stands Out

Full subsystem details live in docs/ARCHITECTURE.md.

Memory That Becomes A Knowledge Graph

Thoth stores durable knowledge as entities and typed relationships, not just chat snippets. It can save, search, link, explore, visualize, and export your knowledge graph as an Obsidian-compatible wiki vault, while background extraction and Dream Cycle refine duplicates, stale confidence, missing relationships, and actionable insights.

Designer Studio, Media, And Documents

Designer Studio creates decks, documents, landing pages, app mockups, and storyboards with a sandboxed interactive runtime, critique-repair loop, editable exports, and shareable HTML. The same media layer supports image generation/editing with OpenAI, Google, and xAI, plus video generation through Google Veo and xAI Grok Imagine Video.

Real Computer Use, With Guardrails

The LangGraph ReAct agent has 30 core tool modules plus auto-generated channel tools. It can browse in a visible Chromium window, use the shell, manage files, search the web, read documents, send email, manage calendar events, create charts, inspect system status, and call external MCP tools. Destructive actions are approval-gated, shell commands are safety-classified, the filesystem is sandboxed, and tools can be disabled individually.

Workflows That Run On Their Own

Advanced workflows add schedules, webhook triggers, condition branches, approval steps, subtasks, notification-only runs, concurrency groups, per-workflow model/tool/skill overrides, and background safety modes. The Workflow Console shows running jobs, approvals, recent history, and insights without leaving chat.

Native, Multi-Channel, Local-First

Thoth ships as a desktop app for Windows and macOS with one-click installers, tray integration, setup wizard, voice input, local Kokoro TTS, desktop notifications, and 5 bundled messaging channels: Telegram, WhatsApp, Discord, Slack, and SMS. Channels share media handling, streaming, approvals, health checks, and optional tunnel support.

Extensible Without Giving Up Control

Plugins add tools and skills through a sandboxed marketplace; MCP servers add external tools with per-server and per-tool review; Claude Code Delegation can coordinate Claude Code CLI as an approval-gated external coding worker; the migration wizard imports selected Hermes/OpenClaw data with backups and redacted reports. Core and plugin API keys use the OS credential store when available, with metadata-only files in Thoth's data directory.

Feature Map

Area What Thoth Includes
Agent & Models LangGraph ReAct agent, streaming, thinking bubbles, smart context trimming, 39 curated Ollama models, opt-in OpenAI/Anthropic/Google/xAI/OpenRouter provider models plus ChatGPT / Codex subscription models, per-thread and per-workflow model overrides
Memory & Knowledge Personal knowledge graph, FAISS semantic recall, 67 typed relations, graph visualization, Obsidian wiki export, document extraction, Dream Cycle refinement, self-knowledge, and insights
Design & Media Designer Studio, PDFs/HTML/PNG/PPTX export, published interactive links, image generation/editing, video generation, chart insertion, Mermaid/Plotly rendering, and media persistence
Tools 30 core tools covering search, browser, shell, filesystem, documents, Gmail, Calendar, X, memory, workflows, tracker, image/video, vision, status, MCP, updates, computation, weather, charts, and system info
Automation Scheduled workflows, step pipelines, conditions, approvals, subtasks, webhooks, task-completion triggers, notifications, channel delivery, run history, and safety modes
Channels & Voice Telegram, WhatsApp, Discord, Slack, SMS, local faster-whisper STT, Kokoro TTS, media intake, reactions, streaming, approval routing, and tunnel manager
Platform & Extensibility Native desktop app, one-click installers, auto-updates, plugin marketplace, MCP client, migration wizard, configurable identity, secure API-key storage, 13 manual skills including Claude Code Delegation, and 18 tool guides

Detailed architecture and subsystem reference →


How does Thoth compare to OpenClaw?

OpenClaw is a popular open-source personal AI assistant. It's a powerful multi-channel gateway built for developers comfortable in the terminal. Here's how the two compare:

Thoth OpenClaw
Getting started One-click installer (.exe / .dmg) — download, run, done. Built-in setup wizard, no terminal required npm install -g openclaw@latest → CLI onboarding. Requires Node.js 24. Windows needs WSL2 (no native Windows support)
Local AI (offline) Local-first — Ollama with 39 curated models out of the box. Works fully offline. Provider models are opt-in Cloud-first design — requires an API key to start. Local model support through provider config
Memory Personal knowledge graph — 10 entity types, typed directional relations, visual explorer, FAISS semantic search + 1-hop graph expansion, memory decay, orphan repair Flat markdown files (MEMORY.md + daily notes) with semantic search. No structured graph
Knowledge refinement Dream Cycle — 5-phase nightly engine: duplicate merging (≥0.93 similarity), description enrichment, stale-confidence decay, relationship inference with hub diversity caps and rejection cache, and actionable insight generation. 3-layer anti-contamination system, dream journal Dreaming (experimental) — Light/Deep/REM phases that promote short-term signals to long-term memory via scoring thresholds
Document intelligence Map-reduce LLM pipeline — extracts structured entities and relations into the knowledge graph with source provenance. Curated 67-type relation vocabulary, entity caps, self-loop rejection. Supports PDF, DOCX, EPUB, HTML, Markdown File read/write/edit operations in the workspace
Wiki vault Obsidian-compatible export — one .md per entity with [[wiki-links]], YAML frontmatter, and per-type indexes Not available
Voice Fully local — faster-whisper STT + Kokoro TTS with 10 voices. Audio never leaves your machine ElevenLabs (cloud TTS) + system fallback. Voice Wake on macOS/iOS
Health tracking Built-in tracker — medications, symptoms, exercise, mood, sleep, periods. Streak analysis, CSV export, Plotly charts Not available
Tools 30 core tools plus auto-generated channel send tools — shell, browser, filesystem, Gmail, Calendar, Designer Studio, Thoth Status, memory graph, MCP external tools, image + video generation, and research tools ~20 built-in tools — exec, browser, web search, canvas, cron, image/music/video generation
Messaging channels 5 channels — Telegram, WhatsApp, Discord, Slack, SMS — all with streaming, reactions, media, and approval routing. Auto-generated per-channel tools. Tunnel manager for webhooks 23+ channels — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Teams, Matrix, IRC, and many more
Autonomous agents Advanced workflows — step-based pipelines with conditions, approval gates, webhook triggers, concurrency groups, and per-workflow safety mode. Multiple run in parallel with their own persistent threads Multi-agent routing with isolated sessions per sender/channel
Desktop app Native window (pywebview) + system tray on Windows & macOS. One-click installers for both macOS menu bar app. No native Windows app (WSL2 required). iOS & Android companion apps
Designer / Canvas Designer Studio for decks, one-pagers, reports, published links, plus Mermaid diagrams and Plotly charts rendered inline A2UI — agent-driven interactive visual workspace
Plugins Sandboxed plugin marketplace with hot-reload and security scanning npm plugin ecosystem + ClawHub skill registry. Large community catalog
Privacy All data local. No account, no server, no telemetry. API keys use the OS credential store when available — Thoth has no servers Self-hosted gateway. Data stays on your machine. Some channel integrations require external services
Cost Free with local models. Provider models use upstream API billing or ChatGPT subscription access only when you opt in Free + open source. Requires a cloud API key to function

In short: OpenClaw is a powerful gateway for developers who want their AI assistant on every messaging platform. Thoth is built for people who want personal AI sovereignty — local-first intelligence, a structured knowledge graph that grows with you, one-click setup, and tools that work without touching a terminal. Different philosophies, both open source.

For comparisons with ChatGPT and other cloud assistants, see docs/ARCHITECTURE.md.


🔧 Tools

Thoth's agent has access to 30 core tool modules. Many of them expose multiple operations, and running messaging channels add extra send/photo/document tools automatically. Tools can be enabled or disabled from the Settings panel.

Search & Knowledge

Tool Description API Key?
🔍 Web Search Live web search via Tavily for current events, news, real-time data TAVILY_API_KEY
🦆 DuckDuckGo Free web search — no API key needed None
🌐 Wikipedia Encyclopedic knowledge with contextual compression None
📚 Arxiv Academic paper search — newest-first sorting, full-text HTML links, arXiv query syntax (ti:, au:, abs:, cat:) None
▶️ YouTube Search videos + fetch full transcripts/captions None
🔗 URL Reader Fetch and extract text content from any URL None
📄 Documents Semantic search over your uploaded files (FAISS vector store) None
📚 Wiki Vault Search, read, rebuild, and export the knowledge graph as an Obsidian markdown vault None

Productivity

Tool Description API Key?
📧 Gmail Search, read, draft, and send emails with file attachments (Google OAuth) OAuth credentials
📅 Google Calendar View, create, update, move, and delete events (Google OAuth) OAuth credentials
📁 Filesystem Sandboxed file operations — read, write, copy, move, delete within a workspace folder; reads PDF, CSV, Excel (.xlsx/.xls), JSON/JSONL, TSV, and image files; images displayed inline in chat; structured data files return schema + stats + preview via pandas; PDF export via export_to_pdf (Playwright with fpdf2 fallback) None
🖥️ Shell Execute shell commands with 3-tier safety (safe/moderate/blocked); persistent sessions per thread; user approval for destructive commands; inline terminal panel None
🌐 Browser Autonomous web browsing in a visible Chromium window — navigate, click, type, scroll, snapshot, back, tab management; accessibility-tree snapshots with numbered element references; persistent profile for logins None
📋 Workflows Create, list, update, delete, and run advanced workflows — step-based pipelines with conditions, approvals, triggers, 7 schedule types (daily, weekly, weekdays, weekends, interval, cron, delay), channel delivery, per-task model override None
📋 Tracker Habit/health tracker — log meds, symptoms, exercise, periods; streak, adherence, trend analysis; CSV export None
📬 Channels Auto-generated send/photo/document tools for each running channel (Telegram, WhatsApp, Discord, Slack, SMS); receive voice, photos, and documents with transcription, analysis, and text extraction Per-channel config
🐦 X (Twitter) Grouped read, post, and engage operations for search, timeline, mentions, user info, posting, replies, quotes, likes, reposts, bookmarks, and deletes via OAuth 2.0 PKCE X API keys
🖼️ Image Generation Generate images from text prompts and edit existing images via OpenAI, xAI (Grok Imagine), and Google (Imagen 4, Nano Banana); rendered inline in chat and deliverable to channels Cloud API key
🎬 Video Generation Generate short video clips from text prompts or reference images via Google Veo and xAI Grok Imagine Video; rendered inline in chat, used by Designer storyboards, and deliverable to channels Cloud API key
🔌 External MCP Tools Connect external Model Context Protocol servers as dynamic namespaced tools; supports stdio, Streamable HTTP, and SSE; per-server and per-tool toggles; destructive-tool approval gates; curated starter import and diagnostics Optional per server

Design & Self-Management

Tool Description API Key?
🎨 Designer Five-mode design studio (deck / document / landing / app_mockup / storyboard) with interactive runtime bridge, curated templates, AI image + video generation, chart insertion, brand controls, critique-repair loop, published share links, and export to PDF / HTML / PNG / PPTX None
🪞 Thoth Status Query version, model, channels, tools, memory, identity, logs, Designer projects, and more; controlled self-management for selected settings and optional skill creation/patching when self-improvement is enabled None

Computation & Analysis

Tool Description API Key?
🧮 Calculator Safe math evaluation — arithmetic, trig, logs, factorials, combinatorics None
🔢 Wolfram Alpha Advanced computation, symbolic math, unit conversion, scientific data WOLFRAM_ALPHA_APPID
🌤️ Weather Current conditions and multi-day forecasts via Open-Meteo None
👁️ Vision Camera capture, screen capture, and workspace image file analysis via vision model None
🧠 Memory Save, search, update, delete, link, and explore memories in the knowledge graph None
🔍 Conversation Search Search past conversations by keyword or list all saved threads None
🖥️ System Info OS, CPU, RAM, disk space, IP addresses, battery, and top processes None
📊 Chart Interactive Plotly charts — bar, line, scatter, pie, histogram, box, area, heatmap from data files; PNG export via save_to_file None

Safety & Permissions

  • Destructive operations require confirmation: workspace_file_delete, workspace_move_file, run_command (moderate-risk), send_gmail_message, move_calendar_event, delete_calendar_event, delete_memory, tracker_delete, task_delete
  • Filesystem is sandboxed: only the configured workspace folder is accessible (defaults to ~/Documents/Thoth, auto-created on first use)
  • Shell commands are safety-classified: safe (auto), moderate (confirm), blocked (rejected); high-risk commands like shutdown, reboot, mkfs are blocked outright; moderate commands in background tasks require per-task command prefix allowlists
  • Browser tabs are isolated per thread: each chat or background task gets its own browser tab; tabs are cleaned up on task completion or thread deletion
  • Background task permissions are configurable per-task: shell command prefixes and email recipients can be allowlisted in the task editor
  • Gmail/Calendar operations are tiered: read, compose/write, and destructive tiers can be toggled independently
  • MCP tools are opt-in and isolated: imported servers stay disabled until tested, external tools are namespaced, destructive MCP tools require approval, and broken MCP servers degrade to diagnostics instead of startup failure
  • Prompt-injection defence — 5-layer scanning protects against injection attacks in tool outputs and user inputs: instruction override detection, role impersonation, data exfiltration, encoding evasion, and social engineering patterns
  • Tools can be individually disabled from Settings to reduce model decision complexity

🏗️ Architecture

┌──────────────────────────────────────────────────────────────────────┐
│                    NiceGUI Frontend (app.py + ui/ package)              │
│  ┌────────────┐  ┌──────────────────────┐  ┌───────────────────┐   │
│  │  Sidebar   │  │   Chat Interface     │  │   Settings Dialog │   │
│  │  Threads   │  │   Streaming Tokens   │  │   14 Tabs         │   │
│  │  Controls  │  │   Tool Status        │  │   Tool Config     │   │
│  │ Knowledge  │  │ Knowledge Graph View │  │ Provider Settings │   │
│  │ Approvals  │  │   Approval Gates     │  │                   │   │
│  └────────────┘  └──────────────────────┘  └───────────────────┘   │
│  ┌──────────────────────────────────────────────────────────────┐   │
│  │  Status Monitor — Avatar · 17 Health Pills · Diagnosis Btn  │   │
│  └──────────────────────────────────────────────────────────────┘   │
└──────────────────────────┬───────────────────────────────────────────┘
                           │
                           ▼
┌──────────────────────────────────────────────────────────────────────┐
│               LangGraph ReAct Agent (agent.py)                       │
│                                                                      │
│   create_react_agent() with pre-model message trimming              │
│   System prompt with TOOL USE, MEMORY, SELF-KNOWLEDGE, and CITATION │
│   guidelines                                                        │
│   Interrupt mechanism for destructive action confirmation            │
│   Graph-enhanced auto-recall (semantic + 1-hop expansion)           │
│   Per-thread model override (local or cloud)                        │
│                                                                      │
│   30 core tool modules + plugin tools + external MCP tools +        │
│   auto-generated channel tools                                      │
└───────┬──────────┬──────────┬──────────┬──────────┬─────────────────┘
        │          │          │          │          │
        ▼          ▼          ▼          ▼          ▼
  ┌──────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐
  │   LLMs   │ │Knowledge│ │ SQLite │ │ FAISS  │ │External│
  │  Ollama  │ │ Graph  │ │Threads │ │ Vector │ │  APIs  │
   │+Providers│ │(SQLite+│ │(local) │ │ Store  │ │(opt-in)│
  │ (opt-in) │ │NetworkX)│ │        │ │        │ │        │
  └──────────┘ └────────┘ └────────┘ └────────┘ └────────┘

📖 Module descriptions, data storage layout, and full system internals → docs/ARCHITECTURE.md


💻 System Requirements

For Local Models (Ollama)

Minimum Recommended
OS Windows 10/11 (64-bit) or macOS 12+ (Apple Silicon & Intel) Same
Python 3.11+ 3.11+
RAM 8 GB (for 8B models) 16–32 GB (for 14B–30B models)
GPU Not required — Ollama runs on CPU NVIDIA 8+ GB VRAM (CUDA) or Apple Silicon — dramatically faster
Disk ~5 GB (app + one small model like qwen3:8b) 20+ GB for multiple or larger models
Internet Required for install and model download; optional at runtime Same

Note: The default local model (qwen3:14b, ~9 GB) runs well on CPU with 16 GB RAM, but a GPU makes responses significantly faster. Smaller models like qwen3:8b (~5 GB) work on 8 GB RAM machines.

For Provider Models Only (No Local GPU Needed)

Requirement Details
OS Windows 10/11 (64-bit) or macOS 12+ (Apple Silicon & Intel)
Python 3.11+
RAM 4 GB
Disk ~1 GB (app + packages, no model downloads)
GPU Not needed
Internet Required (LLM inference happens on the provider's servers)

You still need an API key from OpenAI, Anthropic, Google AI, xAI, or OpenRouter, or an in-app ChatGPT sign-in for ChatGPT / Codex. API providers are billed per-token by the upstream provider; ChatGPT / Codex uses your ChatGPT subscription access.


📥 One-Click Install

Windows

  1. Download the latest Windows installer (.exe)
  2. Run the installer — it installs Python, Ollama, and all dependencies automatically
  3. Launch Thoth from the Start Menu or Desktop shortcut

macOS

  1. Download the latest macOS DMG
  2. Open the DMG and drag Thoth.app into the Applications folder
  3. Launch Thoth from Applications or Launchpad
    • First run may prompt "Thoth is an app downloaded from the internet" → click Open
    • First run installs Homebrew (if needed), Python, Ollama, and all dependencies automatically
    • Subsequent launches skip installation and start in ~3 seconds

Works on Apple Silicon (M1/M2/M3/M4) and Intel Macs (macOS 12+). No terminal, no manual setup — just double-click and go.

Using provider models only? The installer still sets up Ollama by default, but you can skip model downloads. On first launch, choose the Providers setup path, enter your API key, and start chatting — no GPU required.


📦 Installation (From Source)

Prefer a manual install? A few commands from source:

  1. Install Ollama (required for local models — skip if using provider models only)

  2. Clone the repository

    git clone https://github.com/siddsachar/Thoth.git
    cd Thoth
  3. Create and activate a virtual environment

    python -m venv .venv
    # Windows
    .venv\Scripts\activate
    # macOS / Linux
    source .venv/bin/activate
  4. Install dependencies

    pip install -r requirements.txt
  5. Start Ollama (if using local models)

    ollama serve
  6. Launch Thoth

    python launcher.py

    This starts the system tray icon and opens the app at http://localhost:8080.

    Alternatively, run directly without the tray:

    python app.py

First launch: A setup wizard lets you choose between Local (Ollama) and Providers (API key) setup paths. For local, the default brain model (qwen3:14b, ~9 GB) is recommended. For Providers, enter your API key (OpenAI, Anthropic, Google AI, xAI, or OpenRouter), pick a default model, and seed Quick Choices for everyday pickers. ChatGPT / Codex sign-in is available after launch in Settings → Providers.


🔑 API Key Setup (Optional)

Most tools work without any API keys. For provider models and enhanced functionality:

LLM Providers

Service Key Purpose How to Get
OpenAI OPENAI_API_KEY GPT and other OpenAI models platform.openai.com
ChatGPT / Codex In-app ChatGPT sign-in Subscription-backed Codex models Settings → Providers → ChatGPT / Codex
Anthropic ANTHROPIC_API_KEY Claude models (direct API) console.anthropic.com
Google AI GOOGLE_API_KEY Gemini models (direct API) aistudio.google.com
xAI XAI_API_KEY Grok models (direct API) console.x.ai
OpenRouter OPENROUTER_API_KEY 100+ models from all major providers (Claude, Gemini, Llama, etc.) openrouter.ai

Configure provider keys and subscription accounts in Settings → Providers. Keys and in-app ChatGPT / Codex tokens are stored in your OS credential store (Windows Credential Manager, macOS Keychain, or Linux Secret Service/KWallet where available); ~/.thoth/api_keys.json and ~/.thoth/providers.json keep only local metadata such as saved-state, provider status, Quick Choices, and masked fingerprints. External Codex CLI login files are metadata/reference only: Thoth can show that a CLI login exists, but direct Codex runtime requires the in-app ChatGPT sign-in and does not copy runnable tokens from ~/.codex/auth.json.

ChatGPT / Codex uses ChatGPT's subscription/internal Codex backend rather than the public OpenAI API. That backend may change upstream, including endpoint behavior, catalog shape, auth requirements, rate limits, and model availability.

Tool API Keys

Service Key Purpose How to Get
Tavily TAVILY_API_KEY Web search (1,000 free searches/month) app.tavily.com
Wolfram Alpha WOLFRAM_ALPHA_APPID Advanced computation & scientific data developer.wolframalpha.com

Channel & Service Keys

Service Key Purpose How to Get
Telegram TELEGRAM_BOT_TOKEN Telegram bot messaging BotFather
Discord DISCORD_BOT_TOKEN Discord DM messaging Discord Developer Portal
Slack SLACK_BOT_TOKEN / SLACK_APP_TOKEN Slack DM messaging (Socket Mode) Slack API
Twilio (SMS) TWILIO_ACCOUNT_SID / TWILIO_AUTH_TOKEN SMS messaging twilio.com
X (Twitter) X_CLIENT_ID / X_CLIENT_SECRET X API v2 (OAuth 2.0 PKCE) X Developer Portal
ngrok NGROK_AUTHTOKEN Tunnel for inbound webhooks (SMS, etc.) ngrok.com

Configure channel keys in ⚙️ Settings → 📡 Channels and ⚙️ Settings → 🔗 Accounts tabs. Saved keys use the same local OS credential store when available.

For Gmail and Google Calendar, you'll need a Google Cloud OAuth credentials.json — setup instructions are provided in the respective Settings tabs.


🚀 Quick Start

Local Models (Default)

  1. Launch Thoth and wait for the default model to download (first time only)
  2. Click "+ New conversation" in the sidebar
  3. Ask anything — the agent will automatically choose which tools to use:
    • "What's the weather in Tokyo?" → uses Weather tool
    • "Search for recent papers on transformer architectures" → uses Arxiv
    • "Remember that my mom's birthday is March 15" → saves to Memory
    • "Read the file report.pdf in my workspace" → uses Filesystem
    • "Run git status on my project" → uses Shell (safe, auto-executes)
    • "Install pandas with pip" → uses Shell (moderate, asks for approval)
    • "What's on my screen right now?" → uses Vision (screen capture)
    • "I took my Lexapro" → asks to log, then saves to Tracker
    • "Show my headache trends this month" → uses Tracker + Chart
    • "Remind me to call the dentist tomorrow at 9am" → uses Tasks with scheduling
    • "Create a 6-slide pitch deck for my startup" → uses Designer
    • "What did I ask about taxes last week?" → uses Conversation Search
  4. Open ⚙️ Settings to configure models, enable/disable tools, and set up integrations

Provider Models (No GPU? Start Here)

  1. Launch Thoth → on the setup wizard, choose Providers
  2. Enter your API key (OpenAI, Anthropic, Google AI, xAI, or OpenRouter) → Thoth validates and fetches available models
  3. Pick a default model and add the models you actually use to Quick Choices — no downloads, no GPU needed
  4. Optional: open Settings → Providers to sign in to ChatGPT / Codex for subscription-backed Codex models
  5. Switch models per conversation anytime from the chat header dropdown; raw provider catalogs and pinning live in Settings → Models

🔒 Privacy & Security — Personal AI Sovereignty

Local models (default): All LLM inference runs on your machine via Ollama. Documents, memories, and conversations stored locally in ~/.thoth/. External network calls only when using online tools (web search, Gmail, Calendar) — each individually disableable. No telemetry, no tracking.

Provider models (opt-in): The current conversation plus model-visible tool context and tool results are sent to the selected LLM provider (OpenAI, Anthropic, Google AI, xAI, OpenRouter, or ChatGPT / Codex). Memories, knowledge graph, documents, files, and other conversations never leave your machine unless you explicitly include them in the active conversation or expose them through a tool result. API-key providers connect directly to the provider; ChatGPT / Codex uses your in-app ChatGPT sign-in and ChatGPT subscription/internal Codex backend. Thoth has no servers and no middleman.

Always: Core and plugin API keys are stored locally in your OS credential store when available, with only masked metadata in Thoth's data folder. No Thoth account required; no sign-up; no server to phone home to. Tools can be individually disabled to control what the agent can access.


🤝 Contributing

Contributions are welcome. Start with CONTRIBUTING.md for the local setup, branch naming, commit format, PR process, and test expectations.

Useful project docs:

All changes should go through a pull request. main is intended to stay releasable.


📄 License

Apache 2.0 — see LICENSE for details.


🙏 Acknowledgements

Built with NiceGUI, LangGraph, LangChain, Ollama, FAISS, Kokoro TTS, faster-whisper, HuggingFace, and tiktoken.