# ArXiv Daily Bot

Minimal daily arXiv paper recommendations via cron job.

## Setup (1 minute)

```bash
./setup.sh
```

## Usage

```bash
# Test it
./arxiv_bot.py --days 7

# View digest
cat digest.md
```

## Cron Job

Edit crontab:
```bash
crontab -e
```

Add this line (runs daily at 9 AM):
```bash
0 9 * * * $HOME/dev/arxiv-daily/run_daily.sh
```

## Configuration

Edit `run_daily.sh` to change:
- Categories: `--categories "cs.SD,cs.LG"`
- Days back: `--days 1`
- Threshold: `--threshold 0.15`

## Files

- `arxiv_bot.py` - Main script
- `run_daily.sh` - Cron runner
- `setup.sh` - Setup script
- `interest_profile.json` - Your preferences
- `digest.md` - Latest digest
- `archive/` - Previous digests
- `arxiv_bot.log` - Logs

## ArXiv Categories

- `cs.SD` - Audio/Speech
- `cs.LG` - Machine Learning
- `cs.CL` - NLP
- `cs.AI` - AI
- `cs.CV` - Computer Vision

Full list: https://arxiv.org/category_taxonomy

## Troubleshooting

**No papers found**
- Lower threshold: `--threshold 0.10`
- More days: `--days 3`

**Profile not found**
- Copy from: `~/Documents/arxiv_interest_profile.json`
- Or run: `python3 arxiv_bot.py --mode build_index`

**Cron not running**
- Check logs: `tail arxiv_bot.log`
- Verify crontab: `crontab -l`
- Test manually: `./run_daily.sh`

## Optional: Email Digest

Add to `run_daily.sh`:

```bash
# Email digest (macOS)
if [ -f "$DIGEST_FILE" ]; then
    cat "$DIGEST_FILE" | mail -s "ArXiv Digest $(date +%Y-%m-%d)" you@email.com
fi
```

Or use [sendmail](https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-postfix-as-a-send-only-smtp-server-on-ubuntu-20-04).
