task-force-beta-bot/CLAUDE.md
2026-05-16 18:31:43 -06:00

59 lines
1.3 KiB
Markdown

# Task Force Beta Bot
General-purpose Telegram bot with modular handler architecture.
## Build & Run
```bash
cargo build --release
```
## Usage
```
task_force_beta_bot <token_file> <allowed_chats_file>
```
Both arguments are required:
- `token_file` - Path to file containing the Telegram bot token
- `allowed_chats_file` - Path to file containing allowed chat IDs
Example:
```bash
cargo run -- /path/to/token /path/to/allowed_chats
```
### Allowed Chats File
One chat ID per line. Lines starting with `#` are comments.
```
# My group
-100123456789
```
The bot ignores messages from chats not in this list.
## Architecture
- `src/main.rs` - Entry point, dispatcher setup
- `src/config.rs` - Token and allowed chats loading from CLI arguments
- `src/handlers/` - Message handlers (modular, each feature in own file)
- `src/utils/` - Shared utilities
## Adding New Handlers
1. Create `src/handlers/new_feature.rs`
2. Export in `src/handlers/mod.rs`
3. Add handler branch in `handlers::schema()`
## Current Features
### Instagram Link Cleaning (`handlers/instagram.rs`)
Strips tracking parameters from Instagram links:
- `igsh`, `igshid` - Instagram share tracking
- `utm_*` - UTM campaign tracking
- `ref` - Referral tracking
- `fbclid` - Facebook click ID
- `si` - Session identifier