OneDrive Integration
by @moodykong
Copy large/long files to OneDrive for sharing when the user is on Telegram or WhatsApp and wants to view a full document or long file. Use to place files int...
clawhub install onedrive-integration📖 About This Skill
name: onedrive-integration description: Copy large/long files to OneDrive for sharing when the user is on Telegram or WhatsApp and wants to view a full document or long file. Use to place files into OneDrive under an OpenClaw folder and provide the new filename/location.
onedrive-integration
Goal
When the user needs a *full* document / long file in Telegram/WhatsApp (where pasting is awkward), copy the file(s) into OneDrive so the user can open/share from there.
Prerequisites
command -v python3
python3 --version
Configuration (portable)
Machine-specific config lives alongside the skill:
~/.openclaw/skills/onedrive-integration/config.env.example~/.openclaw/skills/onedrive-integration/config.envKeys:
ONEDRIVE_ROOT (required) — e.g. /mnt/c/Users//OneDrive ONEDRIVE_SUBDIR (optional) — default openclawIf config is missing/unset, do not guess—ask Boss to confirm the correct OneDrive folder, then write config.env.
Initialization / installation / onboarding
Preferred (chat-first)
Because the primary interface is chat (Telegram), the preferred onboarding flow is:
1. Ask Boss to confirm the correct OneDrive root folder.
2. Write the real config file: config.env.
3. Run a smoke test by copying a small temp file.
Optional (terminal)
If you are running in a real terminal, you can use the interactive onboarding script:
~/.openclaw/skills/onedrive-integration/scripts/onboard.sh
How it works
Copy requested file(s) into:
${ONEDRIVE_ROOT}/${ONEDRIVE_SUBDIR}/ (defaults to openclaw/)During copy, rename files to include their source path to avoid collisions.
Rename rules
/
- replace path separators (/ and \\) with -
- lowercase
- replace any non [a-z0-9._-] with -
- collapse multiple -Examples:
/home/miles/folder1/file1.md → wsl-home-miles-folder1-file1.md/mnt/c/Users//folder1/file1.md → c-users--folder1-file1.md Implementation
Canonical executable lives inside the skill folder:
~/.openclaw/skills/onedrive-integration/scripts/copy_to_onedrive.pyRun:
~/.openclaw/skills/onedrive-integration/scripts/copy_to_onedrive.py
(Reads config.env automatically.)
Optional overrides:
.../copy_to_onedrive.py --onedrive-root "..." --subdir "..." .../copy_to_onedrive.py --config /path/to/config.env The script:
${ONEDRIVE_ROOT}/${ONEDRIVE_SUBDIR}/ if missingNotes
ONEDRIVE_ROOT is unset, do not guess—ask for confirmation.Executables / bin placement
mkdir -p ~/.local/bin
ln -sf ~/.openclaw/skills/onedrive-integration/scripts/copy_to_onedrive.py ~/.local/bin/copy-to-onedrive
⚙️ Configuration
command -v python3
python3 --version
📋 Tips & Best Practices
ONEDRIVE_ROOT is unset, do not guess—ask for confirmation.