perplexity-cli
🧠 A simple command-line client for the Perplexity API. Ask questions and receive answers directly from the terminal! 🚀🚀🚀
🔍 导出并模糊搜索 Telegram 聊天记录 | Export and fuzzy search your Telegram chat history
Tip
是否曾因 Telegram 无法搜索中文聊天记录而困扰?
或者想查找一条重要消息,却被海量消息淹没,难以定位?
有了 Telegram Search,您可以便捷地备份并检索自己的 Telegram 消息。无论任何语言,强大的本地分词能力都能准确命中。
支持向量搜索,实现句子智能模糊匹配,查找信息更快速精准。
更多 AI 驱动场景,支持未读消息智能摘要、AI 助手对话等丰富功能体验。
我们提供了一个在线体验版,无需自行部署,即可体验 Telegram Search 的全部功能。
访问以下网址开始使用:https://search.lingogram.app
Warning
本项目未发行任何虚拟货币,请警惕相关诈骗风险。
本软件仅供您导出和检索个人聊天记录使用,切勿将其用于任何违法用途。
仓库现在提供本地优先的 TypeScript CLI。用户只需为命名 profile 完成本地登录,Agent 即可自行组合命令决定是否拉取、拉取哪些会话,以及何时显式同步。
pnpm run build:packages pnpm -F @tg-search/cli build pnpm cli --profile work profile configure --apiId 123456 --apiHash abcdef pnpm cli --profile work auth login pnpm cli --profile work chats list --json pnpm cli --profile work sync --takeout --chat 123456 --from 2026-01-01 --to 2026-12-31 pnpm cli --profile work export --from 2026-01-01 --to 2026-12-31 --output ./telegram-2026
chats list 和 messages list 只做有界的远端读取,不持久化消息。批量同步必须先征得用户同意,并由 Agent 在 sync 命令中显式加入 --takeout;未授权、用户拒绝或 Takeout 初始化失败都会停止,不会退回普通 GetHistory。文本同步只申请所选会话类别,不申请联系人或文件导出权限。同步结果写入 profile 独立的 PGlite。CLI 的 stdout 只输出 JSON 结果,Telegram 日志、提示与进度写入 stderr。导出包含按月 JSONL 和校验清单,不包含媒体二进制、登录 session、向量或密钥,也不会替用户执行 AI 总结。
完整命令与隐私边界见 packages/cli/README.md。
mkdir telegram-search cd telegram-search
curl -L https://raw.githubusercontent.com/groupultra/telegram-search/refs/heads/main/docker/docker-compose.yml -o docker-compose.yml curl -L https://raw.githubusercontent.com/groupultra/telegram-search/refs/heads/main/docker/.env.example -o .env curl -L https://raw.githubusercontent.com/groupultra/telegram-search/refs/heads/main/docker/init.sql -o init.sql docker compose -f docker-compose.yml up -d
若未配置 MinIO 相关参数,媒体文件将默认保存至本地的 data/media 目录。
docker run -d --name telegram-search -p 3333:3333 ghcr.io/groupultra/telegram-search:latest
Important
AI Embedding & LLM 设置现在在应用内按账户配置(设置 → API)。
请在修改完成 .env 文件后,再次执行 docker compose -f docker-compose.yml up -d 启动服务。
以下环境变量全部为可选,如果不填写,则会使用默认值。
| 环境变量 | 说明 | 示例值 |
|---|---|---|
TELEGRAM_API_ID |
从 my.telegram.org 获取的 Telegram 应用 ID | 611335 |
TELEGRAM_API_HASH |
从 my.telegram.org 获取的 Telegram 应用 Hash | d524b414d21f4d37f08684c1df41ac9c |
DATABASE_TYPE |
数据库类型,可选 postgres 或 pglite |
pglite |
DATABASE_URL |
PostgreSQL 连接字符串(仅在 DATABASE_TYPE=postgres 时填写) |
postgresql://postgres:123456@pgvector:5432/postgres |
TELEGRAM_BOT_TOKEN |
通过 @BotFather 创建的 Telegram Bot Token | 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 |
PROXY_URL |
代理地址(支持如 socks5://user:pass@host:port 等格式) |
socks5://user:pass@host:port |
PORT |
后端服务 HTTP/WebSocket 监听端口 | 3333 |
HOST |
后端服务监听地址 | 0.0.0.0 |
BACKEND_URL |
Nginx 作为反向代理时用于 /api 和 /ws 的上游后端地址 |
http://127.0.0.1:3333 |
MINIO_URL |
MinIO 服务地址 | http://minio:9000 |
MINIO_ACCESS_KEY |
MinIO 访问密钥 | minioadmin |
MINIO_SECRET_KEY |
MinIO 访问密钥对应的密钥 | minioadmin |
MINIO_BUCKET |
MinIO 存储桶名称 | telegram-media |
请根据自己的需要自行修改环境变量。
docker run -d --name telegram-search \ -p 3333:3333 \ -e DATABASE_TYPE=postgres \ -e DATABASE_URL=postgresql://postgres:123456@localhost:5432/postgres \ ghcr.io/groupultra/telegram-search:latest
git clone https://github.com/groupultra/telegram-search.git cd telegram-search pnpm install cp .env.example .env pnpm run dev
git clone https://github.com/groupultra/telegram-search.git cd telegram-search pnpm install cp .env.example .env docker compose -f docker/docker-compose.dev.yml up -d pgvector minio pnpm run server:dev pnpm run web:dev
📖 更多开发细节和架构细节: CONTRIBUTING.md
more like this
🧠 A simple command-line client for the Perplexity API. Ask questions and receive answers directly from the terminal! 🚀🚀🚀
本地优先的 macOS AI Agent 信号灯:状态栏 + 桌面悬浮信号灯,自动监控 Codex / Claude Code。Local menu bar and floating desktop status lights for A…
search projects, people, and tags