Your AI agent can't search your Dropbox. Documents, receipts, research papers, and notes sit in folders your agent doesn't know about — so you end up searching manually.
This skill bridges that gap: it syncs files from Dropbox, extracts text (PDF, Office, OCR for scans), and indexes everything into your agent's knowledge base. Changed files are detected via content hashing and automatically re-indexed. Unchanged files are never re-processed.
One-command installer configures folders, exclusions, file types, cron scheduling, and OpenClaw memory integration.
text
┌───────────────────┐
│ Dropbox Account │
└────────┬──────────┘
│ Delta API (only changes)
▼
┌───────────────────┐
│ Text Extraction │
│ PDF, Office, OCR │
└────────┬──────────┘
│ Markdown files
▼
┌───────────────────┐
│ OpenClaw Memory │
│ Embed + Search │
└────────┬──────────┘
│
▼
┌───────────────────┐
│ Agent answers │
│ your questions │
└───────────────────┘
Supported formats: PDF (with OCR fallback), Word, Excel, PowerPoint, images (Tesseract OCR), plain text.
bash
# Debian/Ubuntu
sudo apt-get install -y tesseract-ocr tesseract-ocr-eng poppler-utils
# macOS
brew install tesseract poppler
bash
pip3 install pypdf openpyxl python-pptx python-docx
Or run: bash setup.sh
Create app at https://www.dropbox.com/developers/apps
Choose Scoped access → Full Dropbox
Enable: files.metadata.read, files.content.read
Generate refresh token via OAuth 2 flow
Add to ~/.openclaw/.env:
bash
DROPBOX_FULL_APP_KEY=your_app_key
DROPBOX_FULL_APP_SECRET=your_app_secret
DROPBOX_FULL_REFRESH_TOKEN=your_refresh_token
bash
clawhub install dropbox-kb-auto
bash
cd ~/.openclaw/workspace/skills
git clone https://github.com/ferreirafabio/dropbox-kb-auto.git
Edit config.json:
json
{
"folders": ["/Documents", "/Work"],
"skip_paths": ["/Archive", "/Backups"],
"file_types": ["pdf", "docx", "xlsx", "pptx", "jpg", "png", "txt"],
"max_file_size_mb": 20
}
bash
./install.sh
bash
python3 dropbox-sync.py
First run: 5-10 min. Incremental runs: <10 sec.
bash
openclaw cron create \
--name "Dropbox KB Sync" \
--cron "0 */6 * * *" \
--timeout-seconds 14400 \
--session isolated \
--message "cd ~/.openclaw/workspace/skills/dropbox-kb-auto && python3 dropbox-sync.py"
Once indexed, ask your agent:
Tested on 650K files (1,840 indexable): first sync ~15 min, incremental <30 sec.
~/.openclaw/.env (gitignored)MIT
Fabio Ferreira ( @ferreirafabio)