mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-26 20:35:39 -06:00
424521a3d3
* fix(file-transfer): bind standing approvals exactly * fix(file-transfer): keep validator error lint-safe * fix(file-transfer): bind directory listing target before I/O * fix(file-transfer): keep dir list preflight type stable * test(file-transfer): split directory listing policy coverage * fix(file-transfer): bind final node effects * fix(file-transfer): close migration and archive gaps * fix(file-transfer): bind standing grants before preflight * fix(file-transfer): bind directory listings to checked target * fix(file-transfer): bind final effects to filesystem identity * test(file-transfer): prove exact approval transport * fix(file-transfer): keep reapproval prompts path-scoped * chore(config): refresh generated baselines
53 lines
1.9 KiB
Markdown
53 lines
1.9 KiB
Markdown
---
|
|
summary: "Fetch, list, and write files on paired nodes via dedicated node commands. Bypasses bash stdout truncation by using base64 over node.invoke for binaries up to 16 MB."
|
|
read_when:
|
|
- You are installing, configuring, or auditing the file-transfer plugin
|
|
title: "File Transfer plugin"
|
|
---
|
|
|
|
# File Transfer plugin
|
|
|
|
Fetch, list, and write files on paired nodes via dedicated node commands. Bypasses bash stdout truncation by using base64 over node.invoke for binaries up to 16 MB.
|
|
|
|
## Distribution
|
|
|
|
- Package: `@openclaw/file-transfer`
|
|
- Install route: included in OpenClaw
|
|
|
|
## Surface
|
|
|
|
CLI commands: `openclaw file-transfer`; contracts: `tools`
|
|
|
|
<!-- openclaw-plugin-reference:manual-start -->
|
|
|
|
## Migrate existing permissions
|
|
|
|
After upgrading, older positive file-transfer permissions remain inactive until
|
|
you review them. Deny rules, size limits, and symlink settings continue to
|
|
apply. Run this command on the Gateway host in an interactive terminal:
|
|
|
|
```bash
|
|
openclaw file-transfer approvals migrate
|
|
```
|
|
|
|
For each older path, choose one outcome:
|
|
|
|
- **Require exact reapproval** removes the ambiguous permission. The next use
|
|
prompts once and records the exact node, command, requested path, and
|
|
canonical target.
|
|
- **Keep as an intentional wildcard** preserves the entry as an
|
|
operator-authored glob.
|
|
- **Remove this permission** deletes the positive entry.
|
|
|
|
Use `--dry-run` to review the plan without writing. Non-interactive and `--json`
|
|
runs never guess; they list unresolved items and direct you back to the same
|
|
interactive command.
|
|
|
|
The migration writes the new format once after confirmation and reports whether
|
|
the adjacent config backup was verified. Older OpenClaw versions cannot read
|
|
the migrated format. To downgrade, restore that reported `.bak` file before
|
|
starting the older version; doing so also restores the older permission
|
|
semantics.
|
|
|
|
<!-- openclaw-plugin-reference:manual-end -->
|