mirror of
https://github.com/memohai/Memoh.git
synced 2026-04-25 07:00:48 +09:00
bc374fe8cd
* refactor(attachment): multimodal attachment refactor with snapshot schema and storage layer - Add snapshot schema migration (0008) and update init/versions/snapshots - Add internal/attachment and internal/channel normalize for unified attachment handling - Move containerfs provider from internal/media to internal/storage - Update agent types, channel adapters (Telegram/Feishu), inbound and handlers - Add containerd snapshot lineage and local_channel tests - Regenerate sqlc, swagger and SDK * refactor(media): content-addressed asset system with unified naming - Replace asset_id foreign key with content_hash as sole identifier for bot_history_message_assets (pure soft-link model) - Remove mime, size_bytes, storage_key from DB; derive at read time via media.Resolve from actual storage - Merge migrations 0008/0009 into single 0008; keep 0001 as canonical schema - Add Docker initdb script for deterministic migration execution order - Fix cross-channel real-time image display (Telegram → WebUI SSE) - Fix message disappearing on refresh (null assets fallback) - Fix file icon instead of image preview (mime derivation from storage) - Unify AssetID → ContentHash naming across Go, Agent, and Frontend - Change storage key prefix from 4-char to 2-char for directory sharding - Add server-entrypoint.sh for Docker deployment migration handling * refactor(infra): embedded migrations, Docker simplification, and config consolidation - Embed SQL migrations into Go binary, removing shell-based migration scripts - Consolidate config files into conf/ directory (app.example.toml, app.docker.toml, app.dev.toml) - Simplify Docker setup: remove initdb.d scripts, streamline nginx config and entrypoint - Remove legacy CLI, feishu-echo commands, and obsolete incremental migration files - Update install script and docs to require sudo for one-click install - Add mise tasks for dev environment orchestration * chore: recover migrations --------- Co-authored-by: Acbox <acbox0328@gmail.com>
93 lines
4.2 KiB
Markdown
93 lines
4.2 KiB
Markdown
<div align="right">
|
||
<span>[<a href="./README.md">English</a>]<span>
|
||
</span>[<a href="./README_CN.md">简体中文</a>]</span>
|
||
</div>
|
||
|
||
<div align="center">
|
||
<img src="./assets/logo.png" alt="Memoh" width="100" height="100">
|
||
<h1>Memoh</h1>
|
||
<p>多用户、结构化记忆、容器化的 AI Agent 系统。</p>
|
||
<p>📌 <a href="https://docs.memoh.ai/blogs/2026-02-16.html">Introduction to Memoh - The Case for an Always-On, Containerized Home Agent</a></p>
|
||
<div align="center">
|
||
<img src="https://img.shields.io/github/package-json/v/memohai/Memoh" alt="Version" />
|
||
<img src="https://img.shields.io/github/license/memohai/Memoh" alt="License" />
|
||
<img src="https://img.shields.io/github/stars/memohai/Memoh?style=social" alt="Stars" />
|
||
<img src="https://img.shields.io/github/forks/memohai/Memoh?style=social" alt="Forks" />
|
||
<img src="https://img.shields.io/github/last-commit/memohai/Memoh" alt="Last Commit" />
|
||
<img src="https://img.shields.io/github/issues/memohai/Memoh" alt="Issues" />
|
||
</div>
|
||
<div align="center">
|
||
[<a href="https://t.me/memohai">Telegram 群组</a>]
|
||
[<a href="https://docs.memoh.ai">文档</a>]
|
||
[<a href="mailto:business@memoh.net">合作</a>]
|
||
</div>
|
||
<hr>
|
||
</div>
|
||
|
||
Memoh 是一个 AI Agent 系统平台。用户可通过 Telegram、Discord、飞书(Lark) 等创建自己的 AI 机器人并与之对话。每个 bot 拥有独立的容器与记忆系统,可编辑文件、执行命令并自我构建——与 [OpenClaw](https://openclaw.ai) 类似,Memoh 为多 bot 管理提供更安全、灵活、可扩展的解决方案。
|
||
|
||
## 快速开始
|
||
|
||
一键安装(**需先安装 [Docker](https://www.docker.com/get-started/)**):
|
||
|
||
```bash
|
||
curl -fsSL https://raw.githubusercontent.com/memohai/Memoh/main/scripts/install.sh | sudo sh
|
||
```
|
||
|
||
*静默安装(全部默认):`curl -fsSL ... | sudo sh -s -- -y`*
|
||
|
||
或手动部署:
|
||
|
||
```bash
|
||
git clone --depth 1 https://github.com/memohai/Memoh.git
|
||
cd Memoh
|
||
sudo docker compose up -d
|
||
```
|
||
|
||
> macOS 或用户已在 `docker` 用户组中时,无需 `sudo`。
|
||
|
||
启动后访问 <http://localhost:8082>。默认登录:`admin` / `admin123`
|
||
|
||
自定义配置与生产部署请参阅 [DEPLOYMENT.md](DEPLOYMENT.md)。
|
||
|
||
## 为什么选择 Memoh?
|
||
|
||
OpenClaw、Clawdbot、Moltbot 固然出色,但在稳定性、安全性、配置复杂度与 token 成本上仍有不足。若你正在寻找稳定、安全的 Bot SaaS 方案,不妨考虑我们的开源 Memoh。
|
||
|
||
Memoh 是基于 Golang 的多 bot agent 服务,提供 bot、Channel、MCP、Skills 等的完整图形化配置。我们使用 Containerd 为每个 bot 提供容器级隔离,并大量借鉴 OpenClaw 的 Agent 设计。
|
||
|
||
Memoh Bot 具备深度工程化的记忆层,灵感来自 Mem0:对每轮对话进行知识存储,实现更精准的记忆检索。
|
||
|
||
Memoh Bot 能区分并记忆多人与多 bot 的请求,在任意群聊中无缝协作。你可以用 Memoh 组建 bot 团队,或为家人配置账号,用 bot 管理日常家务。
|
||
|
||
## 特性
|
||
- **多 Bot 管理**:创建多个 bot;人与 bot、bot 与 bot 可私聊、群聊或协作。
|
||
- **容器化**:每个 bot 运行在独立容器中,可在容器内自由执行命令、编辑文件、访问网络,宛如各自拥有一台电脑。
|
||
- **记忆工程**:每次对话存入数据库,默认加载最近 24 小时上下文;每轮对话会存储为记忆,供 bot 通过语义检索召回。
|
||
- **多平台**:支持 Telegram、飞书(Lark) 等。
|
||
- **简单易用**:通过图形界面配置 Provider、Model、Memory、Channel、MCP、Skills 等,无需编码即可搭建自己的 AI 机器人。
|
||
- **定时任务**:使用 cron 表达式在指定时间执行命令。
|
||
- 更多…
|
||
|
||
## 路线图
|
||
|
||
详见 [Roadmap Version 0.1](https://github.com/memohai/Memoh/issues/2)。
|
||
|
||
### 开发
|
||
|
||
开发环境配置请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。
|
||
|
||
## Star History
|
||
|
||
[](https://www.star-history.com/#memohai/Memoh&type=date&legend=top-left)
|
||
|
||
## Contributors
|
||
|
||
<a href="https://github.com/memohai/Memoh/graphs/contributors">
|
||
<img src="https://contrib.rocks/image?repo=memohai/Memoh" />
|
||
</a>
|
||
|
||
**LICENSE**: AGPLv3
|
||
|
||
Copyright (C) 2026 Memoh. All rights reserved.
|