Packages workspace files into a ZIP, generates a companion description file, and notifies the Manager to deliver them to the user. Files are persisted locally to .file-outbox/ first — even if notification fails, the files are safe.
All required environment variables are injected automatically by the Manager at instance creation. No manual configuration needed.
Before running the script, write a concise description of what you generated. This description will be saved as a .txt file alongside the ZIP in .file-outbox/, serving as a human-readable summary for the user.
The description should include:
Good example:
Snake game project (snake_game)
Contains: index.html, style.css, game.js
Usage: Open index.html in a browser to play the game
Bad example:
files
Pass the source path and the description text to the script:
bash scripts/send-files.sh \
"/home/node/workspace/snake_game" \
"Snake game project with index.html, style.css, game.js. Open index.html in browser to play."
The script will:
/home/node/workspace/, blocks symlink traversalzip, directory zip -r, 500MB limit{file_id}.txt in .file-outbox/.file-outbox/ (safe on disk)Core design: After step 4, files are safely on disk. Steps 5-6 failing does NOT lose the files. The Manager retries automatically — the user will always receive the files eventually.
The script outputs the result. Even if notification fails, the files are safely persisted locally. The system will retry delivery automatically.
# Send a single file
bash scripts/send-files.sh \
"/home/node/workspace/report.pdf" \
"Monthly sales report for March 2026, includes charts and summary tables."
# Send an entire directory (auto-recursive ZIP)
bash scripts/send-files.sh \
"/home/node/workspace/my_project" \
"Complete Python project with requirements.txt and README.md. Run: pip install -r requirements.txt && python main.py"
Collect them into a temporary directory first:
mkdir -p /tmp/delivery
cp /home/node/workspace/report.pdf /tmp/delivery/
cp /home/node/workspace/data.csv /tmp/delivery/
bash scripts/send-files.sh "/tmp/delivery" "Analysis report + raw data CSV"
.file-outbox/For each delivery, two files are created:
.file-outbox/
├── 20260401120000_a1b2c3d4.zip # The packaged files
└── 20260401120000_a1b2c3d4.txt # The description text (human-readable)
The .txt file contains the exact description you provided, serving as a persistent record of what was sent and why.
| Scenario | Trigger? |
|---|---|
| Created a complete project/application | ✅ Yes |
| Generated documents/reports/data files | ✅ Yes |
| User asks to "send files" | ✅ Yes |
| Only explaining code / answering questions | ❌ No |
| Modifying system config files | ❌ No |
| Tiny single-line changes | ❌ No |
Success:
📦 Packaging files...
File ID: 20260401120000_a1b2c3d4 | Size: 156KB
📤 Notifying Manager...
✅ Notification sent! Files will be delivered to the user automatically.
Notification failure (files still safe):
⚠️ Cannot connect to Manager. Files are safely stored locally.
The system will retry automatically — the user will receive the files.
| Limit | Value |
|---|---|
| Max file size | 500MB (after ZIP) |
| Source path scope | /home/node/workspace/ only |
| Cannot send | .file-outbox/ directory itself |
OPENCLAW_INSTANCE_NAME — Instance name (auto-injected by Manager)发现更多技能插件,请访问7w4.net。
OPENCLAW_MANAGER_URL — File Push service URL (auto-injected by Manager)OPENCLAW_FILE_PUSH_TOKEN — Instance-specific push token (auto-injected by Manager)curl and zip commands must be available in PATH这个 Skill 质量不错,核心功能是把生成的文件打包发送给用户。它最大的优点是安全可靠——文件会先保存在本地再通知 Manager,即使通知出问题文件也不会丢。文档清晰易懂,告诉用户什么时候该用它。不足之处是依赖系统环境和特定的配置变量,在某些情况下可能用不了。建议优先在配置完善的正式环境中使用。总体而言,这是一个设计用心、考虑周全的文件发送工具。