code-transfer

安装量: 42
排名: #17457

安装

npx skills add https://github.com/mhattingpete/claude-skills-marketplace --skill code-transfer

Code Transfer

Transfer code between files with precise line-based control. Dual-mode operation: native tools (1-10 files) or execution mode (10+ files, 90% token savings).

Operation Modes Basic Mode (Default)

Use Read, Edit, Bash scripts for 1-10 file operations. Works immediately, no setup required.

Execution Mode (10+ files) from api.filesystem import batch_copy from api.code_analysis import find_functions

functions = find_functions('app.py', pattern='handle_.*') operations = [{ 'source_file': 'app.py', 'start_line': f['start_line'], 'end_line': f['end_line'], 'target_file': 'handlers.py', 'target_line': -1 } for f in functions] batch_copy(operations)

When to Use "copy this code to [file]" "move [function/class] to [file]" "extract this to a new file" "insert at line [number]" "reorganize into separate files" Core Operations 1. Extract Source Code Read(file_path="src/auth.py") # Full file Read(file_path="src/auth.py", offset=10, limit=20) # Line range Grep(pattern="def authenticate", -n=true, -A=10) # Find function

  1. Insert at Specific Line

Use line_insert.py script for line-based insertion:

python3 skills/code-transfer/scripts/line_insert.py [--backup]

Examples:

Insert function at line 50

python3 skills/code-transfer/scripts/line_insert.py src/utils.py 50 "def helper():\n pass"

Insert with backup

python3 skills/code-transfer/scripts/line_insert.py src/utils.py 50 "code" --backup

Insert at beginning

python3 skills/code-transfer/scripts/line_insert.py src/new.py 1 "import os"

When to use:

User specifies exact line number Inserting into new/empty files Inserting at beginning/end without context 3. Insert Relative to Content

Use Edit when insertion point is relative to existing code:

Edit( file_path="src/utils.py", old_string="def existing():\n pass", new_string="def existing():\n pass\n\ndef new():\n return True" )

Workflow Examples Copy Function Between Files Find: Grep(pattern="def validate_user", -n=true, -A=20) Extract: Read(file_path="auth.py", offset=45, limit=15) Check target: Read(file_path="validators.py") Insert: Use line_insert.py or Edit based on context Extract Class to New File Locate: Grep(pattern="class DatabaseConnection", -n=true, -A=50) Extract: Read(file_path="original.py", offset=100, limit=50) Create: Write(file_path="database.py", content="") Update imports: Edit in original file Remove old class: Edit with replacement Insert at Specific Line Validate: Read(file_path="main.py", offset=20, limit=10) Insert: python3 skills/code-transfer/scripts/line_insert.py main.py 25 "logger.info('...')" --backup Verify: Read(file_path="main.py", offset=23, limit=5) Reorganize Into Modules Analyze: Read(file_path="utils.py") Identify groups: Grep(pattern="^def |^class ", -n=true) Extract each category: Write new files Update original: Re-export or redirect Best Practices

Planning:

Understand dependencies (imports, references) Identify exact start/end of code block Check target file structure Ensure necessary imports included

Preservation:

Include docstrings and comments Transfer related functions together Update imports in both files Maintain formatting/indentation

Validation:

Verify insertion placement Check syntax Test imports Suggest running tests

Backups:

Use --backup for significant changes Critical file operations Large deletions Integration code-refactor: Refactor after transferring test-fixing: Run tests after reorganizing feature-planning: Plan large reorganizations

返回排行榜