Profile
Back to NewsBack
GitHub Trending 3 min
Reader Mode
groupultra/telegram-search: ๐Ÿ” ๅฏผๅ‡บๅนถๆจก็ณŠๆœ็ดข Telegram ่Šๅคฉ่ฎฐๅฝ• | Export and fuzzy search your Telegram chat history

groupultra/telegram-search: ๐Ÿ” ๅฏผๅ‡บๅนถๆจก็ณŠๆœ็ดข Telegram ่Šๅคฉ่ฎฐๅฝ• | Export and fuzzy search your Telegram chat history

7 hours ago

!preview


groupultra%2Ftelegram-search | Trendshift

[็ซ‹ๅณไฝ“้ชŒ] [English] [ๆ—ฅๆœฌ่ชž]

Discord Telegram DeepWiki
GitHub Package Version Release Docker / OCI CI

[!TIP]
ๆ˜ฏๅฆๆ›พๅ›  Telegram ๆ— ๆณ•ๆœ็ดขไธญๆ–‡่Šๅคฉ่ฎฐๅฝ•่€Œๅ›ฐๆ‰ฐ๏ผŸ
> ๆˆ–่€…ๆƒณๆŸฅๆ‰พไธ€ๆก้‡่ฆๆถˆๆฏ๏ผŒๅด่ขซๆตท้‡ๆถˆๆฏๆทนๆฒก๏ผŒ้šพไปฅๅฎšไฝ๏ผŸ
> ๆœ‰ไบ† Telegram Search๏ผŒๆ‚จๅฏไปฅไพฟๆทๅœฐๅค‡ไปฝๅนถๆฃ€็ดข่‡ชๅทฑ็š„ Telegram ๆถˆๆฏใ€‚ๆ— ่ฎบไปปไฝ•่ฏญ่จ€๏ผŒๅผบๅคง็š„ๆœฌๅœฐๅˆ†่ฏ่ƒฝๅŠ›้ƒฝ่ƒฝๅ‡†็กฎๅ‘ฝไธญใ€‚
> ๆ”ฏๆŒๅ‘้‡ๆœ็ดข๏ผŒๅฎž็Žฐๅฅๅญๆ™บ่ƒฝๆจก็ณŠๅŒน้…๏ผŒๆŸฅๆ‰พไฟกๆฏๆ›ดๅฟซ้€Ÿ็ฒพๅ‡†ใ€‚
> ๆ›ดๅคš AI ้ฉฑๅŠจๅœบๆ™ฏ๏ผŒๆ”ฏๆŒๆœช่ฏปๆถˆๆฏๆ™บ่ƒฝๆ‘˜่ฆใ€AI ๅŠฉๆ‰‹ๅฏน่ฏ็ญ‰ไธฐๅฏŒๅŠŸ่ƒฝไฝ“้ชŒใ€‚

๐Ÿ’– ่ตžๅŠฉ่€…

!Sponsors

โœ… ๅŠŸ่ƒฝไบฎ็‚น

๐Ÿ“ฆ ๅฏผๅ‡บไธŽๅค‡ไปฝ

  • [x] ๆ”ฏๆŒๅคš็งๆ•ฐๆฎๅบ“ๅฏผๅ‡บ่Šๅคฉ่ฎฐๅฝ•๏ผšๅ…ผๅฎน PGlite ไธŽ PostgreSQL
  • [x] ๅช’ไฝ“่ต„ๆบๅฏ่‡ชๅŠจๅค‡ไปฝ่‡ณ MinIO ๅฏน่ฑกๅญ˜ๅ‚จ๏ผŒๆ— ้œ€ๆ‰‹ๅŠจๅนฒ้ข„
  • [x] ๆถˆๆฏๅฏผๅ‡บๆ—ถ่‡ชๅŠจๅฎŒๆˆๅ‘้‡ๅตŒๅ…ฅไธŽๅˆ†่ฏๅค„็†๏ผŒๅŠฉๅŠ›ๅŽ็ปญ็ฒพๅ‡†ๆฃ€็ดข
  • [x] ๅฎžๆ—ถๅŒๆญฅ๏ผŒ่‡ชๅŠจๆ‹‰ๅ–ๅนถๆ›ดๆ–ฐๆœ€ๆ–ฐๅฏน่ฏๅ†…ๅฎน

๐Ÿ” ่Šๅคฉ่ฎฐๅฝ•ๆœ็ดข

  • [x] ่‡ชๅŠจๆ™บ่ƒฝๅˆ†่ฏ๏ผŒๆ”ฏๆŒๅคš่ฏญ่จ€็ฒพๅ‡†ๆฃ€็ดข
  • [x] ่žๅˆๆจก็ณŠๅŒน้…ไธŽๅ‘้‡่ฏญไน‰ๆœ็ดข๏ผŒๆŸฅๆ‰พๆ•ˆ็އๆ›ด้ซ˜
  • [x] ๅ›พ็‰‡่ฏญไน‰ๆœ็ดข๏ผšๆ”ฏๆŒๅ›พ็‰‡ embedding๏ผŒไปฅๆ–‡ๆœๅ›พ
  • [x] ๆœ็ดข็ป“ๆžœๆ— ้™ๆปšๅŠจ๏ผŒๆต่งˆไฝ“้ชŒๆ›ดๆต็•…
  • [x] RAG ๆ™บ่ƒฝ้—ฎ็ญ”๏ผš็›ดๆŽฅไธŽ AI ่Šๅคฉ๏ผŒๅŸบไบŽๅކๅฒไธŠไธ‹ๆ–‡่Žทๅพ—ๅฎžๆ—ถ่งฃ็ญ”

๐Ÿค– Telegram Bot

  • [x] ้€š่ฟ‡ Bot ๆœ็ดขๅ’Œๅฏผๅ‡บๆถˆๆฏ
  • [x] ๆถˆๆฏ deep link ่ทณ่ฝฌ๏ผŒไธ€้”ฎๅฎšไฝๅŽŸๅง‹ๅฏน่ฏ

๐Ÿš€ ้ซ˜็บงๅŠŸ่ƒฝ

  • [x] ๆœช่ฏปๆถˆๆฏๆ™บ่ƒฝๆ‘˜่ฆ๏ผšไธ€้”ฎๆฑ‡ๆ€ปๅ…จ้ƒจๆœช่ฏปๆถˆๆฏ๏ผŒ่‡ชๅŠจ็”Ÿๆˆ็ฒพ็‚ผๆ‘˜่ฆ๏ผŒ้‡็‚นๅ†…ๅฎนไธ€็›ฎไบ†็„ถ
  • [x] ๆ—ฅๆœŸ่Œƒๅ›ด็ญ›้€‰๏ผŒๅฟซ้€Ÿ็ผฉๅฐๆœ็ดข่Œƒๅ›ด
  • [x] ๅณ้”ฎ่œๅ•่ทณ่ฝฌ Telegram ๅŽŸๆถˆๆฏ๏ผŒๆ”ฏๆŒ็งปๅŠจ็ซฏ

๐Ÿ›ฃ๏ธ ่ทฏ็บฟๅฑ•ๆœ›

๐Ÿง  AI ่ƒฝๅŠ›ๅขžๅผบ

  • [ ] ่‡ชๅŠจ็”Ÿๆˆไผš่ฏๆ€ป็ป“
  • [ ] โ€œ่ถ…็บงๅคง่„‘โ€๏ผšๅŸบไบŽๅކๅฒๆถˆๆฏ๏ผŒ่‡ชๅŠจๆž„ๅปบไบบ็‰ฉไธŽไบ‹ไปถ็š„็Ÿฅ่ฏ†ๅ›พ่ฐฑ

๐Ÿ”— ๅช’ไฝ“ไธŽ้“พๆŽฅๆ‹“ๅฑ•

  • [ ] ๆ™บ่ƒฝๆ•ด็†"ๅทฒไฟๅญ˜ๆถˆๆฏ"ๆ”ถ่—ๅคน๏ผŒๆๅ‡ๅ†…ๅฎน็ฎก็†ๆ•ˆ็އ
  • [ ] ้“พๆŽฅไธŽๅ›พ็‰‡ๆทฑๅบฆ็ดขๅผ•๏ผš็ฝ‘้กตๆ‘˜่ฆใ€ๅ›พ็‰‡ OCR ๆ–‡ๅญ—่ฏ†ๅˆซๅŠๆ™บ่ƒฝๆ่ฟฐ๏ผŒๅŠฉๅŠ›ๆœ็ดขไธŽๅฝ’ๆกฃ

๐ŸŒ ๅคšๅนณๅฐ่žๅˆ

  • [ ] ่ทจๅนณๅฐๆ‰ฉๅฑ•๏ผšๆ”ฏๆŒ Discord ๅŠๅ…ถไป–ไธปๆต็คพไบค/้€š่ฎฏๅนณๅฐ๏ผŒๅฎž็Žฐ็ปŸไธ€ๆฃ€็ดขไธŽๅค‡ไปฝ

๐ŸŽ‰ ็ซ‹ๅณไฝฟ็”จ

ๆˆ‘ไปฌๆไพ›ไบ†ไธ€ไธชๅœจ็บฟไฝ“้ชŒ็‰ˆ๏ผŒๆ— ้œ€่‡ช่กŒ้ƒจ็ฝฒ๏ผŒๅณๅฏไฝ“้ชŒ Telegram Search ็š„ๅ…จ้ƒจๅŠŸ่ƒฝใ€‚

่ฎฟ้—ฎไปฅไธ‹็ฝ‘ๅ€ๅผ€ๅง‹ไฝฟ็”จ๏ผšhttps://search.lingogram.app

[!WARNING]
ๆœฌ้กน็›ฎๆœชๅ‘่กŒไปปไฝ•่™šๆ‹Ÿ่ดงๅธ๏ผŒ่ฏท่ญฆๆƒ•็›ธๅ…ณ่ฏˆ้ช—้ฃŽ้™ฉใ€‚
> ๆœฌ่ฝฏไปถไป…ไพ›ๆ‚จๅฏผๅ‡บๅ’Œๆฃ€็ดขไธชไบบ่Šๅคฉ่ฎฐๅฝ•ไฝฟ็”จ๏ผŒๅˆ‡ๅ‹ฟๅฐ†ๅ…ถ็”จไบŽไปปไฝ•่ฟๆณ•็”จ้€”ใ€‚

๐Ÿš€ ๅฟซ้€Ÿๅผ€ๅง‹

Agent / CLI ๆจกๅผ

ไป“ๅบ“็Žฐๅœจๆไพ›ๆœฌๅœฐไผ˜ๅ…ˆ็š„ TypeScript CLIใ€‚็”จๆˆทๅช้œ€ไธบๅ‘ฝๅ profile ๅฎŒๆˆๆœฌๅœฐ็™ปๅฝ•๏ผŒAgent ๅณๅฏ่‡ช่กŒ็ป„ๅˆๅ‘ฝไปคๅ†ณๅฎšๆ˜ฏๅฆๆ‹‰ๅ–ใ€ๆ‹‰ๅ–ๅ“ชไบ›ไผš่ฏ๏ผŒไปฅๅŠไฝ•ๆ—ถๆ˜พๅผๅŒๆญฅใ€‚

้€š่ฟ‡ Homebrew ๅฎ‰่ฃ…๏ผˆmacOS / Linux๏ผ‰

Homebrew ไผšๅฎ‰่ฃ… CLI ๅŠๅ…ถ Node.js ่ฟ่กŒๆ—ถไพ่ต–๏ผŒๆ— ้œ€ๆ‰‹ๅŠจๅฎ‰่ฃ… Node.js ๆˆ–ๆž„ๅปบไป“ๅบ“ใ€‚ๆญคๅฎ‰่ฃ…ๆ–นๅผๆไพ›ๆœฌๅœฐ CLI ๅ’Œ daemon๏ผ›็ฝ‘้กต็•Œ้ข็š„้ƒจ็ฝฒๆ–นๅผ่งไธ‹ๆ–น Docker ่ฏดๆ˜Žใ€‚

brew tap groupultra/telegram-search https://github.com/groupultra/telegram-search
brew install groupultra/telegram-search/tg-search

tg-search profile configure --apiId YOUR_API_ID --apiHash YOUR_API_HASH tg-search auth login brew services start groupultra/telegram-search/tg-search tg-search daemon status

API ID ๅ’Œ API Hash ๅฏๅœจ my.telegram.org ่Žทๅ–ใ€‚ไปฅไธŠๅ‘ฝไปคไฝฟ็”จ default profile๏ผŒๅ…ˆๅฎŒๆˆ็™ปๅฝ•ๅ†ๅฏๅŠจๆœๅŠกใ€‚่ฏทไปฅๅฝ“ๅ‰็”จๆˆท่ฟ่กŒ brew services๏ผŒไธ่ฆไฝฟ็”จ sudoใ€‚ๆœๅŠกๅœจๅŽๅฐไฟๆŒ Telegram ่ฟžๆŽฅ๏ผŒๅนถๅœจ็”จๆˆท็™ปๅฝ•็ณป็ปŸๅŽๅฏๅŠจ๏ผ›็™ปๅฝ• Telegram ๅŽไผšๆŒ็ปญไฟๅญ˜ๆ–ฐๆถˆๆฏๅŠๅ…ถ็ผ–่พ‘ใ€ๅˆ ้™คๆ›ดๆ–ฐใ€‚ๆ‰น้‡ๅކๅฒๅŒๆญฅไป้œ€ๆ˜พๅผ่ฟ่กŒ sync --takeoutใ€‚

brew services stop groupultra/telegram-search/tg-search
brew upgrade groupultra/telegram-search/tg-search
brew services restart groupultra/telegram-search/tg-search

ๅ‡็บงไฟ็•™ profile ๆ•ฐๆฎใ€‚ๆ—ฅๅฟ—ไฝไบŽ default profile ็›ฎๅฝ•ไธญ็š„ daemon.stdout.log ๅ’Œ daemon.stderr.log๏ผŒ็”ฑ daemon ่ฝฎ่ฝฌใ€‚ๅ…ถไป–ๅ‘ฝๅ profile ๅฏ้€š่ฟ‡ tg-search --profile NAME daemon run ๅฏๅŠจ๏ผŒ่ฏฆ็ป†่ทฏๅพ„ๅ’Œๅ‘ฝไปค่ง CLI ๆ–‡ๆกฃใ€‚

ไปŽๆบ็ ๆž„ๅปบ

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 --json pnpm cli --profile work export --from 2026-01-01 --to 2026-12-31 --output ./telegram-2026 --json

chats list ๅ’Œ messages list ๅชๅšๆœ‰็•Œ็š„่ฟœ็ซฏ่ฏปๅ–๏ผŒไธๆŒไน…ๅŒ–ๆถˆๆฏใ€‚ๆ‰น้‡ๅŒๆญฅๅฟ…้กปๅ…ˆๅพๅพ—็”จๆˆทๅŒๆ„๏ผŒๅนถ็”ฑ Agent ๅœจ sync ๅ‘ฝไปคไธญๆ˜พๅผๅŠ ๅ…ฅ --takeout๏ผ›ๆœชๆŽˆๆƒใ€็”จๆˆทๆ‹’็ปๆˆ– Takeout ๅˆๅง‹ๅŒ–ๅคฑ่ดฅ้ƒฝไผšๅœๆญข๏ผŒไธไผš้€€ๅ›žๆ™ฎ้€š GetHistoryใ€‚ๆ–‡ๆœฌๅŒๆญฅๅช็”ณ่ฏทๆ‰€้€‰ไผš่ฏ็ฑปๅˆซ๏ผŒไธ็”ณ่ฏท่”็ณปไบบๆˆ–ๆ–‡ไปถๅฏผๅ‡บๆƒ้™ใ€‚ๅŒๆญฅ็ป“ๆžœๅ†™ๅ…ฅ profile ็‹ฌ็ซ‹็š„ PGliteใ€‚CLI ้ป˜่ฎค่พ“ๅ‡บไพฟไบŽ้˜…่ฏป็š„ๆ–‡ๆœฌ๏ผ›Agent ่ฐƒ็”จๆ˜พๅผๅŠ ๅ…ฅ --json๏ผŒ่ฎฉ stdout ๅชๅŒ…ๅซ็จณๅฎš็š„ JSON envelopeใ€‚Telegram ๆ—ฅๅฟ—ใ€ๆ็คบไธŽ่ฟ›ๅบฆๅ†™ๅ…ฅ stderrใ€‚ๅฏผๅ‡บๅŒ…ๅซๆŒ‰ๆœˆ JSONL ๅ’Œๆ ก้ชŒๆธ…ๅ•๏ผŒไธๅŒ…ๅซๅช’ไฝ“ไบŒ่ฟ›ๅˆถใ€็™ปๅฝ• sessionใ€ๅ‘้‡ๆˆ–ๅฏ†้’ฅ๏ผŒไนŸไธไผšๆ›ฟ็”จๆˆทๆ‰ง่กŒ AI ๆ€ป็ป“ใ€‚

ๅฎŒๆ•ดๅ‘ฝไปคไธŽ้š็ง่พน็•Œ่ง packages/cli/README.mdใ€‚

ไฝฟ็”จ Docker Compose

  1. ๆ–ฐๅปบไธ€ไธช็ฉบ็›ฎๅฝ•๏ผŒ็”จไบŽๅญ˜ๆ”พ Telegram Search ็š„้…็ฝฎๅ’Œๆ•ฐๆฎ๏ผš
mkdir telegram-search
cd telegram-search
  1. ไธ‹่ฝฝ Docker Compose ๆ–‡ไปถๅนถๅฏๅŠจๅ…จ้ƒจๆœๅŠก๏ผˆๅŒ…ๆ‹ฌๆ•ฐๆฎๅบ“ใ€MinIO ็ญ‰๏ผ‰๏ผš
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
  1. ็„ถๅŽๆ‰“ๅผ€ http://localhost:3333 ๅณๅฏไฝฟ็”จ ๐ŸŽ‰

ไฝฟ็”จ Docker Image

่‹ฅๆœช้…็ฝฎ 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 Image ็Žฏๅขƒๅ˜้‡

่ฏทๆ นๆฎ่‡ชๅทฑ็š„้œ€่ฆ่‡ช่กŒไฟฎๆ”น็Žฏๅขƒๅ˜้‡ใ€‚

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

๐Ÿš€ Activity

!Alt

Star History Chart

Chat with me