yuanyuanxiang
6bcd593b6d
Feature: Add upload_file MCP tool (V2 protocol, main-connection upload)
...
Implement the P2 upload_file tool to push a local file or directory from the
master to an online Windows host over the existing V2 file-transfer protocol.
The server drives FileBatchTransferWorkerV2 synchronously on the main
connection through a headless callback, reuses the list_files chain for the
overwrite pre-check, and is gated by McpFileTransfer=1 plus McpReadonly=0.
The client main connection never initialized the file-transfer module, so
g_status stayed 0 and RecvFileChunkV2 silently dropped every chunk, truncating
uploads to zero bytes. Add a once-per-process lazy InitFileUpload in the
COMMAND_SEND_FILE_V2 handler that mirrors the FileManager init; the destructor
deliberately does not Uninit so g_status remains 1 across reconnects.
Update the design doc to record the client-side change and correct the
upload_file description to state that sha256 is not returned (V2 has no
receiver-to-sender ACK; integrity is checked client-side and logged only).
Co-Authored-By: deepseek-v4-pro
2026-08-31 22:43:16 +02:00
..
2026-04-19 22:55:21 +02:00
2026-06-05 00:05:13 +02:00
2026-04-19 22:55:21 +02:00
2026-08-15 11:09:14 +02:00
2026-08-15 11:09:14 +02:00
2026-08-21 19:50:11 +02:00
2026-04-19 22:55:21 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-06-06 13:02:29 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-05-30 00:12:38 +02:00
2026-05-30 00:12:38 +02:00
2026-06-15 19:14:49 +02:00
2026-05-30 00:12:38 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-08-15 11:09:14 +02:00
2026-06-29 22:49:30 +02:00
2026-04-19 22:55:21 +02:00
2026-08-15 11:09:14 +02:00
2026-04-19 22:55:21 +02:00
2026-07-13 19:02:25 +02:00
2026-07-13 19:02:25 +02:00
2026-04-19 22:55:21 +02:00
2026-07-13 19:02:25 +02:00
2026-07-13 19:02:25 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-05-09 23:13:24 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-05-30 00:12:38 +02:00
2026-05-30 00:12:38 +02:00
2026-04-19 22:55:21 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-08-15 11:09:14 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-06-24 22:31:14 +02:00
2026-06-20 12:38:28 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-06-24 22:31:14 +02:00
2026-04-19 22:55:21 +02:00
2026-08-31 22:43:16 +02:00
2026-08-15 11:09:14 +02:00
2026-07-14 22:32:29 +02:00
2026-06-05 00:05:13 +02:00
2026-05-06 19:29:02 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-06-06 14:54:42 +02:00
2026-06-06 14:54:42 +02:00
2026-08-21 19:50:11 +02:00
2026-08-21 19:50:11 +02:00
2026-06-05 00:05:13 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-05-11 20:22:07 +02:00
2026-06-29 22:49:30 +02:00
2026-06-29 22:49:30 +02:00
2026-08-23 10:37:55 +02:00
2026-06-05 00:05:13 +02:00
2026-08-23 10:37:55 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-06-15 19:15:31 +02:00
2026-06-14 00:24:46 +02:00
2026-08-25 13:21:54 +02:00
2026-06-15 19:15:31 +02:00
2026-05-07 18:17:28 +02:00
2026-05-07 18:17:28 +02:00
2026-06-16 21:03:45 +02:00
2026-06-16 21:03:45 +02:00
2026-08-03 18:30:40 +02:00
2026-04-19 22:55:21 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-06-29 22:49:30 +02:00
2026-06-29 22:49:30 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-08-21 19:50:11 +02:00
2026-06-05 00:05:13 +02:00
2026-05-08 12:39:59 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-06-29 22:49:30 +02:00
2026-06-29 22:49:30 +02:00
2026-04-19 22:55:21 +02:00
2026-08-03 18:30:40 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-04-19 22:55:21 +02:00
2026-05-30 00:12:38 +02:00
2026-06-05 00:05:13 +02:00
2026-06-05 00:05:13 +02:00
2026-06-15 14:11:42 +02:00
2026-05-30 00:12:38 +02:00