File transfer and Git
Understand fixed targets, file scope and protocol limitations.
On this page
Workflow
SFTP transfers reuse a saved SSH resource, authentication and host-key verification. Uploads and downloads use registered single-file operations; review source, destination and overwrite risk during approval. Git HTTPS uses a separate token task.
Boundary and checks
Do not put private keys or tokens in Git remote URLs, arguments, chat or logs. Git over SSH is not implemented; verify supported task types instead of bypassing host verification.
Choose a transfer type
SFTP and Git HTTPS share resource, template, approval, idempotency and filtered run-history controls. An AI cannot change registered paths, remote URLs, branches or commands at run time. Target, template or credential changes invalidate earlier approvals.
One-file SFTP transfer
- Use an SSH resource with an independently verified host key and a saved password or supported private key. SFTP does not bypass host identity verification or use a remote shell.
- Fix upload or download direction, the absolute local path on the broker’s computer, the absolute remote server path, byte limit and overwrite choice. Overwrite is denied by default.
- At approval, inspect both paths and the target. A successful result reports direction and byte count; it does not return file contents to the AI.
Uploads and downloads first write a temporary file in the destination directory before committing the target. Overwriting an upload requires the server’s supported atomic-rename extension; otherwise it fails without deleting the old file. If cancellation or timeout reports cleanup_ok:false, inspect the registered directory for .part files. A crash can also leave a temporary file, and cancellation after a committed replacement cannot undo it.
Fixed-branch Git HTTPS
Use trusted local Git 2.31+ and an existing repository directory. A task fixes the HTTPS remote, branch, username, token reference and operation: query a remote branch, fetch to a dedicated remote ref, or non-force push the same branch. It does not automatically checkout, merge, force-push or delete branches. Never put a token in the remote URL, arguments, repository configuration or chat. The broker supplies authentication only to that Git subprocess and filters its output.
A remote may have accepted a push before connectivity failed. Inspect the remote branch and local state before requesting another run. Confirm the local path, repository contents and account permissions before exchanging business files.
Corresponding product documentation · Report a documentation issue