An rclone backend that exposes your todofor.ai cloud workspace as a virtual filesystem.
todoforai:documents/report.pdf → your files, just like gdrive
todoforai:images/logo.png → your files
todoforai:todos/<todoId>/ → attachments for a TODO
todoforai:todos/<todoId>/att-id → specific attachment
No files/ prefix. todos/ is a reserved folder name for TODO attachments.
Once configured:
# Browse your workspace
rclone ls todoforai:
# Mount as a local folder
rclone mount todoforai: ~/workspace
# Sync files
rclone sync ./local-dir todoforai:project/
# Copy TODO attachments locally
rclone copy todoforai:todos/abc123/ ./todo-files/rclone config create todoforai todoforai
# → Browser opens → sign in with Google → done# Get key from https://todofor.ai/settings/api-keys
rclone config create todoforai todoforai api_key=YOUR_API_KEYrclone ls todoforai:| Option | Default | Description |
|---|---|---|
api_key |
(empty) | API key (skip OAuth if set) |
url |
https://api.todofor.ai |
API server URL (advanced) |
token |
(auto) | OAuth token JSON (managed by rclone) |
The mapping is trivial: todoforai:path → todoforai:path (rclone-style, no authority).
That's it. The backend handles all URI routing.
| Operation | files | todos/ |
|---|---|---|
| List | ✅ | ✅ |
| Read | ✅ | ✅ |
| Write | ✅ | ✅ |
| Delete | ✅ | ✅ |
| Mkdir | ✅ | ❌ |
cd rclone-backend
# Unit tests
go test ./backend/todoforai/ -v
# Integration tests (needs API key)
TODOFORAI_API_KEY=xxx go test ./backend/todoforai/ -run Integration -vMIT