원클릭으로
file-sync
Sync files with centralized storage. Use when your coordinator or another Worker notifies you of file updates (config changes, task files, shared data, collaboration artifacts).
메뉴
Sync files with centralized storage. Use when your coordinator or another Worker notifies you of file updates (config changes, task files, shared data, collaboration artifacts).
Use before direct filesync calls, reading non-task shared files, pushing mid-task progress, or troubleshooting missing shared files. Do not use for normal task acceptance or submission; taskflow ack_task and submit_task handle lifecycle sync internally.
Use before filesync calls for project directories, global-shared inputs, non-task shared files, listing shared paths, or troubleshooting missing files. Do not use for task-level sync; taskflow delegate_task and check_task handle task directory sync internally.
Discover and install agent skills from the open ecosystem. Use when you encounter an unfamiliar domain, framework, or workflow that you lack specialized knowledge about, or when your coordinator suggests searching for skills before starting a task.
Discover and call MCP Server tools via the mcporter CLI. Use when your coordinator notifies you about new MCP tools, or when you need to call external APIs. Includes workflow for generating skill documentation for new MCP servers.
Use when you are invited to a Project Room or assigned a task within a multi-worker project. Covers project plan reading, task coordination with other Workers, and git author config.
Use when executing a task (progress logging, plan updates), when resuming a task after session reset, or when managing task history. Covers progress log format, task-history.json, and resume flow.
| name | file-sync |
| description | Sync files with centralized storage. Use when your coordinator or another Worker notifies you of file updates (config changes, task files, shared data, collaboration artifacts). |
When your coordinator notifies you that your config has been updated (e.g., skill update, model switch), pull the latest from MinIO:
mc mirror --overwrite "${HICLAW_STORAGE_PREFIX}/agents/${HICLAW_WORKER_NAME}/" /home/openhuman/.openhuman/agent-config/
Hot reload caveats:
SOUL.md on the next message — no restart needed/home/openhuman/.openhuman/skills/ are picked up on the next message as wellconfig.toml (Matrix channel, LLM provider) require a container restart — your coordinator handles this when neededAutomatic background sync:
The shared/ directory is automatically mirrored from MinIO at startup and every sync cycle. No manual pull is needed.
Task and project files are at:
| Local path (auto-synced) |
|---|
shared/tasks/{task-id}/ |
shared/projects/{project-id}/ |
# Read the spec (already synced locally)
cat /home/openhuman/.openhuman/shared/tasks/{task-id}/spec.md
# Push your results back to MinIO (push is still manual)
bash /home/openhuman/.openhuman/skills/file-sync/scripts/push-shared.sh tasks/{task-id}/ --exclude "spec.md" --exclude "base/"
The push-shared.sh script automatically detects your team and pushes to the correct MinIO path.
When to use:
push-shared.shAlways confirm to the sender after push completes.
Example workflow:
# Coordinator assigns task: "New task [st-01]. Please file-sync and read shared/tasks/st-01/spec.md"
# Pull latest (if needed)
mc mirror --overwrite "${HICLAW_STORAGE_PREFIX}/agents/${HICLAW_WORKER_NAME}/" /home/openhuman/.openhuman/agent-config/
# Read the spec
cat /home/openhuman/.openhuman/shared/tasks/st-01/spec.md
# ... do the work ...
# Push results
bash /home/openhuman/.openhuman/skills/file-sync/scripts/push-shared.sh tasks/st-01/ --exclude "spec.md" --exclude "base/"
# Confirm to coordinator
"Task complete. Results pushed to MinIO."