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

推荐订阅源

D
DataBreaches.Net
B
Blog
博客园_首页
C
Check Point Blog
Microsoft Security Blog
Microsoft Security Blog
MyScale Blog
MyScale Blog
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
B
Blog RSS Feed
M
MIT News - Artificial intelligence
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
量子位
V
V2EX
Y
Y Combinator Blog
Hugging Face - Blog
Hugging Face - Blog
Martin Fowler
Martin Fowler
Recent Announcements
Recent Announcements
I
InfoQ
博客园 - 【当耐特】

Hacker News - Newest: "AI"

AI can't read an investor deck AI as an attorney? Student uses ChatGPT, Gemini to sue UW over alleged racial discrimination Hacking MCP Servers in AI Systems – The Rug Pull: Tool Changes After Approval GitHub - MeepCastana/KubeezCut: Free Web based video editor Can AI judge journalism? A Thiel-backed startup says yes, even if it risks chilling whistleblowers Coming soon: 10 Things That Matter in AI Right Now DARPA built an AI to fact-check enemy weapons claims What explains heterogeneity in AI adoption? When AI Meets Muscle: Context-Aware Electrical Stimulation Promises a New Way to Guide Human Movements - Department of Computer Science AI Changed How We Build. It Did Not Change What Matters. Linux rules on using AI-generated code - Copilot is OK, but humans must take 'full responsibility for the… Meta spins up AI version of Mark Zuckerberg to engage with employees Code Mode: Let Your AI Write Programs, Not Just Call Tools | TanStack Blog GitHub - Delavalom/graft: Go framework for building AI agents. Type-safe tools, multi-provider (OpenAI, Anthropic, Gemini, Bedrock), zero vendor SDKs. India's TCS tops estimates, says new AI models did not dent services demand Gen Z's fading AI hype Strong feeling: we are in a folded AI reality GitHub - machinarii/total-recall-catalog: A reference catalog of latest knowledge retrieval, memory & RAG systems GitHub - mensfeld/code-on-incus: Give each AI agent its own isolated machine with root, Docker, and systemd. Active defense detects and stops threats automatically.. Quantization, LoRA, and the 8% Problem: Benchmarking Local LLMs for Production AI Iran war: We spoke to the man making Lego-style AI videos that experts say are powerful propaganda Powell, Bessent discussed Anthropic's Mythos AI cyber threat with major U.S. banks GitHub - immartian/bellamem: Persistent belief-graph memory for AI agents. Retrieves decisive context by importance — not recency, not RAG, not /compact. recursive-mode: The Repo-Native Operating System for AI Engineering After the attack on Sam Altman's home, will AI CEO's go on the offensive? The biggest advance in AI since the LLM Opus 4.6 vs GPT 5.4 One Prompt Unity World Generation Test “AI polls” are fake polls Client Challenge Can AI be a 'child of God'? Inside Anthropic's meeting with Christian leaders
GitHub - DaveSimoes/CrustAI: Private, local-first AI assi...
DaveHN_2026 · 2026-05-07 · via Hacker News - Newest: "AI"

Your AI Assistant. Your Machine. Your Rules.

100% Private · Runs Locally · Multi-Platform · Zero Cloud

npm version Node.js License: MIT Contributions Welcome Self-Hosted Ollama

Windows macOS Linux


Chat with your own AI on Telegram, Discord, WhatsApp, and Slack — no data ever leaves your machine.


Get Started

git clone https://github.com/DaveSimoes/CrustAI.git
cd CrustAI && npm install && npm start

AI assistant running 100% locally — chat on Telegram, fully offline. CrustAI Live Demo

new_video_real_chatonline-video-cutter com-ezgif com-optimize


Why CrustAI?

Every AI assistant you use today sends your conversations to a cloud server. Your questions, your context, your data — all stored externally.

CrustAI is different. It runs entirely on your own machine using Ollama, meaning:

Without CrustAI With CrustAI
Conversations logged on cloud servers Conversations stay on your machine
Data used to train external models Zero data collection, ever
Requires paid API keys 100% free, uses local models
One platform (e.g., only ChatGPT web) Works on Telegram, Discord, WhatsApp, Slack
Internet required Works fully offline

Key Features

🔒 100% Private Every message stays on your device. No telemetry, no external APIs, no logs
🧠 Powered by Ollama Use llama3.2, mistral, phi3, tinyllama and any model you choose
📱 4 Platforms, 1 Bot Connect to Telegram, Discord, WhatsApp, and Slack simultaneously
🧬 Long-Term Memory Your assistant remembers facts about you across sessions
🗣️ Voice Support Speak and listen — fully offline voice mode (pt-BR)
REST API Integrate CrustAI into your own tools and workflows
🎭 Personality Config Give your assistant a custom name, tone, and identity
🐳 Docker Ready One-command deployment for servers and home labs
🌐 Bilingual Full English + Portuguese support out of the box

Quick Start

Prerequisites

Install & Run

# 1. Clone the repository
git clone https://github.com/DaveSimoes/CrustAI.git
cd CrustAI

# 2. Install dependencies
npm install

# 3. Start Ollama and pull a model
ollama serve
ollama pull tinyllama     # lightweight — 600MB, works on any machine
# or
ollama pull llama3.2      # more powerful — 2GB, recommended 8GB RAM

# 4. Configure
cp config/config.example.yml config/config.yml
# Edit config/config.yml with your platform tokens

# 5. Launch CrustAI
npm start

📊 Model Benchmark

Run a full performance comparison across all supported Ollama models — no cloud, no setup, just results.

node scripts/benchmark.js

➡️ Full benchmark documentation

Configuration

Edit config/config.yml:

model: tinyllama           # or llama3.2, phi3, mistral...
ollama_url: http://localhost:11434
language: en               # or pt-BR

telegram:
  enabled: true
  token: YOUR_BOT_TOKEN_HERE
  allowed_user_ids: []     # leave empty to allow all users

discord:
  enabled: false
  token: ""

whatsapp:
  enabled: false

slack:
  enabled: false

voice:
  enabled: false
  port: 8765

Available Commands

Command Description
/ping Check if the bot is alive
/help Show all available commands
/model Display which AI model is currently running
/remember <fact> Store a fact in long-term memory
/forget Erase all stored facts
/clear Clear conversation history

Architecture

Messaging Platforms (Telegram / Discord / WhatsApp / Slack)
                        │
                        ▼
             ┌─────────────────────┐
             │  Message Orchestrator│
             └────────┬────────────┘
                      │
           ┌──────────┴──────────┐
           ▼                     ▼
    ┌─────────────┐      ┌──────────────┐
    │ Ollama LLM  │      │ Memory Store │
    │  (local)    │      │  (sql.js)    │
    └─────────────┘      └──────────────┘
           │                     │
           └──────────┬──────────┘
                      ▼
               ┌─────────────┐
               │  REST API   │
               │  (Fastify)  │
               └─────────────┘

Design principle: Adapter boundaries make it trivial to add new messaging platforms without touching the core conversation logic.


How It Works

  1. Adapters — Each platform (Telegram, Discord, WhatsApp, Slack) has its own isolated adapter. Messages are normalized into a unified format before reaching the orchestrator.
  2. Orchestrator — Receives messages, applies personality config, queries the LLM, and manages conversation context.
  3. Ollama LLM — Runs any compatible model locally. No network calls. No rate limits. No billing.
  4. Memory Store — Persists user-defined facts in a local SQLite database, available across sessions.
  5. REST API — Exposes endpoints for integrating CrustAI into custom tools, automations, and dashboards.

Tech Stack

Technology Purpose
Node.js Runtime environment
Ollama Local LLM inference engine
node-telegram-bot-api Telegram integration
@whiskeysockets/baileys WhatsApp integration
discord.js Discord integration
@slack/bolt Slack integration
Fastify REST API server
sql.js Embedded database for memory
yaml Configuration management

Project Structure

crustai/
├── src/
│   ├── core/
│   │   ├── index.js          # Main orchestrator
│   │   ├── llm.js            # Ollama LLM client
│   │   └── commands.js       # Command handler
│   ├── adapters/
│   │   ├── telegram/         # Telegram bot
│   │   ├── discord/          # Discord bot
│   │   ├── whatsapp/         # WhatsApp bot
│   │   └── slack/            # Slack bot
│   ├── memory/
│   │   └── store.js          # Long-term memory (SQLite)
│   ├── personality/
│   │   └── prompt.js         # System prompt builder
│   ├── voice/
│   │   └── server.js         # Offline voice WebSocket server
│   └── api/
│       └── server.js         # REST API
├── config/
│   ├── config.yml            # Your config (git-ignored)
│   ├── config.example.yml    # Template
│   └── personality.yml       # Assistant personality
├── demo/
│   ├── terminal.gif
│   ├── ping.gif
│   └── chat.gif
└── data/                     # Local database (git-ignored)

Privacy First

CrustAI was built with privacy as its core principle — not as a feature, but as a hard technical constraint:

  • ✅ All conversations stay on your machine
  • ✅ No API keys sent to external AI providers
  • ✅ No telemetry, usage tracking, or analytics
  • ✅ No accounts, no sign-up, no terms-of-service surprise
  • ✅ Fully open source — inspect every single line
  • ✅ Your data. Your models. Your rules.

Supported Models (via Ollama)

Model Size Best For
tinyllama ~600MB Low-end machines, quick replies
phi3 ~2GB Balanced performance
llama3.2 ~2GB General purpose, highly capable
mistral ~4GB Strong reasoning and coding
llama3 ~4GB High quality conversations

Any model available on ollama.ai can be used.


Roadmap

  • Telegram integration
  • Discord integration
  • WhatsApp integration
  • Slack integration
  • Long-term memory
  • REST API
  • Bilingual support (EN / PT-BR)
  • Web UI dashboard
  • Docker one-click deployment
  • Image understanding (multimodal LLMs)
  • Plugin system for custom tools
  • Mobile app companion

Contributing

Contributions are very welcome! Please read CONTRIBUTING.md before opening a PR.

# Fork the repository, then:
git checkout -b feature/your-feature
git commit -m "feat: add your feature"
git push origin feature/your-feature
# Open a Pull Request

Troubleshooting

"Connection refused" on Ollama — Make sure Ollama is running: ollama serve

Bot not responding on Telegram — Double-check your token in config/config.yml and that the bot was started with /start.

High memory usage — Switch to a lighter model like tinyllama. Edit model: in config/config.yml.

WhatsApp keeps disconnecting — WhatsApp Web sessions expire. Restart CrustAI to regenerate the QR code.


Language / Idioma

  • 🇺🇸 English — you're reading it
  • 🇧🇷 Português — role para baixo

🇧🇷 O que é o CrustAI?

CrustAI é um assistente de IA totalmente privado e auto-hospedado que roda inteiramente na sua própria máquina — nenhum dado sai do seu computador. Conecta-se ao Telegram, WhatsApp, Discord e Slack com o poder de modelos de linguagem locais, sem depender de nenhum provedor externo.

✨ Funcionalidades Principais

Funcionalidade Descrição
🔒 100% Privado Todos os dados ficam na sua máquina. Sem nuvem, jamais
🧠 LLM Local Powered by Ollama — llama3.2, tinyllama, mistral e muito mais
📱 Multi-Plataforma Telegram, WhatsApp, Discord, Slack — um só assistente
🧬 Memória Longa Lembra fatos sobre você entre conversas
🗣️ Voz Offline Fala e escuta sem internet (pt-BR)
REST API Integre o CrustAI em qualquer fluxo de trabalho
🎭 Personalidade Configure nome, tom e comportamento do assistente

🚀 Início Rápido

# 1. Clone o repositório
git clone https://github.com/DaveSimoes/CrustAI.git
cd CrustAI

# 2. Instale as dependências
npm install

# 3. Inicie o Ollama e baixe um modelo
ollama serve
ollama pull tinyllama

# 4. Configure o projeto
cp config/config.example.yml config/config.yml
# Edite config/config.yml com seu token do Telegram

# 5. Inicie o CrustAI
npm start

Author

Dave Simoes — Developer passionate about AI, privacy, and open source.


License

MIT — see LICENSE for details.