Show HN: LocalGPT – 本地优先的 Rust AI 助手,具备持久化内存
发布: (2026年2月8日 GMT+8 09:26)
3 分钟阅读
原文: Hacker News
Source: Hacker News
LocalGPT
一个专注于本地设备的 AI 助手,使用 Rust 构建 — 持久记忆、自治任务、约 27 MB 二进制文件。受 OpenClaw 启发并兼容。
cargo install localgpt
为什么选择 LocalGPT?
- 单一二进制 — 无需 Node.js、Docker 或 Python
- 面向本地设备 — 完全在你的机器上运行;记忆数据只属于你
- 持久记忆 — 基于 markdown 的知识库,支持全文检索和语义检索
- 自治心跳 — 委派任务,让它在后台自行工作
- 多种接口 — CLI、Web UI、桌面 GUI
- 多种 LLM 提供商 — Anthropic(Claude)、OpenAI、Ollama
- 兼容 OpenClaw — 支持 SOUL、MEMORY、HEARTBEAT markdown 文件和技能格式
安装
cargo install localgpt
快速开始
# 初始化配置
localgpt config init
# 启动交互式聊天
localgpt chat
# 提出单个问题
localgpt ask "What is the meaning of life?"
# 以守护进程方式运行,带心跳、HTTP API 和 Web UI
localgpt daemon start
工作原理
LocalGPT 使用普通的 markdown 文件作为记忆:
~/.localgpt/workspace/
├── MEMORY.md # 长期知识(每次会话自动加载)
├── HEARTBEAT.md # 自治任务队列
├── SOUL.md # 个性与行为指导
└── knowledge/ # 结构化知识库(可选)
├── finance/
├── legal/
└── tech/
文件通过 SQLite FTS5 建立索引以实现快速关键字搜索,使用 sqlite-vec 进行本地嵌入的语义搜索。
配置
存放于 ~/.localgpt/config.toml:
[agent]
default_model = "claude-cli/opus"
[providers.anthropic]
api_key = "${ANTHROPIC_API_KEY}"
[heartbeat]
enabled = true
interval = "30m"
active_hours = { start = "09:00", end = "22:00" }
[memory]
workspace = "~/.localgpt/workspace"
CLI 命令
Chat & Ask
localgpt chat # 交互式聊天
localgpt chat --session # 恢复会话
localgpt ask "question" # 单个问题
Daemon
localgpt daemon start # 启动后台守护进程
localgpt daemon stop # 停止守护进程
localgpt daemon status # 显示状态
localgpt daemon heartbeat # 运行一次心跳循环
Memory
localgpt memory search "query" # 搜索记忆
localgpt memory reindex # 重新索引文件
localgpt memory stats # 显示统计信息
Config
localgpt config init # 创建默认配置
localgpt config show # 显示当前配置
HTTP API
当守护进程运行时:
| 接口 | 描述 |
|---|---|
GET /health | 健康检查 |
GET /api/status | 服务器状态 |
POST /api/chat | 与助手聊天 |
GET /api/memory/search?q= | 搜索记忆 |
GET /api/memory/stats | 记忆统计信息 |
构建使用的技术
Rust、Tokio、Axum、SQLite(FTS5 + sqlite‑vec)、fastembed、eframe