Commit 73e8965
committed
feat(filesystem): add copy_file tool for efficient file/directory copying
Implements a new copy_file tool that addresses issue #1581 by providing an efficient way to copy files and directories without requiring read/write operations for large files.
## Changes:
- Add copy_file tool with support for both files and directories
- Use fs.copyFile for files (optimized for large files)
- Use fs.cp with recursive option for directories
- Include proper validation and error handling
- Update README documentation
## Implementation Details:
- Validates both source and destination paths are within allowed directories
- Checks if destination exists and fails appropriately
- Follows existing tool patterns for consistency
- Maintains security checks and path validation
Fixes #15811 parent 2aa85c2 commit 73e8965
2 files changed
+55
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
74 | 82 | | |
75 | 83 | | |
76 | 84 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
139 | 144 | | |
140 | 145 | | |
141 | 146 | | |
| |||
369 | 374 | | |
370 | 375 | | |
371 | 376 | | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
372 | 384 | | |
373 | 385 | | |
374 | 386 | | |
| |||
612 | 624 | | |
613 | 625 | | |
614 | 626 | | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
615 | 662 | | |
616 | 663 | | |
617 | 664 | | |
| |||
0 commit comments