krau 0e951f641c fix(storage): add panic recovery for malformed MP4 files
- Add defer/recover in getMP4Meta to catch panics from gomedia library
- Implement fallback to ffprobe when MP4 parsing fails
- Fixes "no vosdata" panic when processing certain MP4 files

Also add CLAUDE.md to provide architecture guidance for AI coding assistants.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-31 20:36:26 +08:00
2025-12-27 16:01:41 +08:00
2025-12-27 16:01:41 +08:00
2025-12-27 16:01:41 +08:00
2024-11-09 09:39:18 +08:00
2025-12-19 20:57:28 +08:00
2025-12-19 20:57:28 +08:00

Save Any Bot

English | 简体中文

Save Any Telegram File to Anywhere 📂. Support restrict saving content and beyond telegram.

Release Date tag Build Status Stars Downloads Issues Pull Requests License

🎯 Features

  • Support documents / videos / photos / stickers… and even Telegraph
  • Bypass "restrict saving content" media
  • Batch download
  • Streaming transfer
  • Multi-user support
  • Auto organize files based on storage rules
  • Watch specified chats and auto-save messages, with filters
  • Write JS parser plugins to save files from almost any website
  • Storage backends:
    • Alist
    • S3
    • WebDAV
    • Local filesystem
    • Telegram (re-upload to specified chats)

📦 Quick Start

Create a config.toml file with the following content:

[telegram]
token = "" # Your bot token, obtained from @BotFather
[telegram.proxy]
# Enable proxy for Telegram, currently only SOCKS5 is supported
enable = false
url = "socks5://127.0.0.1:7890"

[[storages]]
name = "Local Disk"
type = "local"
enable = true
base_path = "./downloads"

[[users]]
id = 114514 # Your Telegram account id
storages = []
blacklist = true

Run Save Any Bot with Docker:

docker run -d --name saveany-bot \
    -v ./config.toml:/app/config.toml \
    -v ./downloads:/app/downloads \
    ghcr.io/krau/saveany-bot:latest

Please read the docs for more configuration options and usage.

Sponsors

This project is supported by YxVM and NodeSupport.

If this project is helpful to you, consider sponsoring me via:

Thanks To

Contact

  • Group
  • Discussion
  • PersonalChannel
Description
Save Any Telegram File to Anywhere 📂 (Alist, Disk, Webdav, S3, Rclone...) . Support restrict saving content and files beyond telegram.
Readme AGPL-3.0 91 MiB
Languages
Go 98.7%
JavaScript 1%
Dockerfile 0.2%