mcpField
C
code-execution

code-execution

github.com/mhattingpete开发689290 次安装14 周前更新
代码仓库

关于 code-execution

供 Claude Code 使用的技能,可在本地执行 Python 文件、代码、转换和 Git 操作。适用于批量或多步骤处理,并返回摘要而非大量源数据。

主要功能

  1. 01文件系统复制与编辑操作
  2. 02代码元数据和依赖分析
  3. 03批量代码转换
  4. 04Git 状态与变更操作
  5. 05本地批量处理

适用场景

  1. 01跨多个文件重命名标识符
  2. 02在文件间移动指定函数
  3. 03审查代码库中的依赖

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/code-execution确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

examples/
bulk_refactor.py
codebase_audit.py
extract_functions.py

详细介绍

代码执行

在本地执行 Python,并访问 API。批量操作可节省 90-99% 的令牌。

适用场景

  • 批量操作(10 个以上文件)
  • 复杂的多步骤工作流
  • 跨多个文件进行迭代处理
  • 用户提到效率或性能

使用方法

在 Claude Code 中直接导入 Python:

from execution_runtime import fs, code, transform, git

# Code analysis (metadata only!)
functions = code.find_functions('app.py', pattern='handle_.*')

# File operations
code_block = fs.copy_lines('source.py', 10, 20)
fs.paste_code('target.py', 50, code_block)

# Bulk transformations
result = transform.rename_identifier('.', 'oldName', 'newName', '**/*.py')

# Git operations
git.git_add(['.'])
git.git_commit('feat: refactor code')

**如果尚未安装:**运行 ~/.claude/plugins/marketplaces/mhattingpete-claude-skills/execution-runtime/setup.sh

可用 API

  • 文件系统(fs):copy_lines、paste_code、search_replace、batch_copy
  • 代码分析(code):find_functions、find_classes、analyze_dependencies——仅返回元数据!
  • 转换(transform):rename_identifier、remove_debug_statements、batch_refactor
  • Git(git):git_status、git_add、git_commit、git_push

模式

  1. 在本地分析(仅元数据,不含源代码)
  2. 在本地处理(在执行环境中完成所有操作)
  3. 返回摘要(而非数据!)

示例

批量重构(50 个文件):

from execution_runtime import transform
result = transform.rename_identifier('.', 'oldName', 'newName', '**/*.py')
# Returns: {'files_modified': 50, 'total_replacements': 247}

提取函数:

from execution_runtime import code, fs

functions = code.find_functions('app.py', pattern='.*_util$')  # Metadata only!
for func in functions:
    code_block = fs.copy_lines('app.py', func['start_line'], func['end_line'])
    fs.paste_code('utils.py', -1, code_block)

result = {'functions_moved': len(functions)}

代码审计(100 个文件):

from execution_runtime import code
from pathlib import Path

files = list(Path('.').glob('**/*.py'))
issues = []

for file in files:
    deps = code.analyze_dependencies(str(file))  # Metadata only!
    if deps.get('complexity', 0) > 15:
        issues.append({'file': str(file), 'complexity': deps['complexity']})

result = {'files_audited': len(files), 'high_complexity': len(issues)}

最佳实践

✅ 返回摘要,而非数据
✅ 使用 code_analysis(返回元数据,而非源代码)
✅ 批量操作
✅ 处理错误,并返回错误数量

❌ 不要将所有代码都返回到上下文中
❌ 只需要元数据时,不要读取完整源代码
❌ 不要逐个处理文件

令牌节省情况

文件数传统方式执行方式节省比例
105K 个令牌50090%
5025K 个令牌60097.6%
100150K 个令牌1K99.3%

评论

支持 Markdown