mcpField
M
morph-apply

morph-apply

github.com/parcadei开发3.9k488 次安装39 周前更新
代码仓库

关于 morph-apply

Morph Fast Apply 通过 Morph Apply API,根据指令和代码标记编辑文件,无需先读取完整文件,适用于大型文件和批量修改;使用时需配置 morph 服务及 MORPH_API_KEY。

主要功能

  1. 01根据自然语言指令编辑文件
  2. 02用代码标记定位修改位置
  3. 03一次批量处理相关改动
  4. 04无需先读取完整文件

适用场景

  1. 01编辑当前上下文之外的大型文件
  2. 02一次应用多项相关修改
  3. 03为函数添加日志或错误处理

MCP 相关

此技能要求在 mcp_config.json 中配置 morph MCP 服务及 MORPH_API_KEY,并通过该服务访问 Morph Apply API。

安装

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

$npx skills add https://github.com/parcadei/continuous-claude-v3 --skill morph-apply

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

详细介绍

Morph Fast Apply

使用 Morph Apply API 快速进行 AI 驱动的文件编辑。无需先读取文件即可编辑文件。处理速度为每秒 10,500 个 token,准确率为 98%。

适用场景

  • 无需先读取整个文件即可快速编辑文件
  • 批量编辑文件(一次操作进行多项更改)
  • 知道要更改什么,但文件很大
  • 读取会消耗过多 token 的大型文件

核心模式:代码标记

使用 // ... existing code ...(或符合相应语言习惯的注释)标记编辑位置:

# ... existing code ...
try:
    result = process()
except Exception as e:
    log.error(e)
# ... existing code ...

API 会智能地将编辑内容放置在正确位置。

用法

添加错误处理
uv run python -m runtime.harness scripts/mcp/morph_apply.py \
    --file "src/auth.py" \
    --instruction "Add error handling to login function" \
    --code_edit "# ... existing code ...
try:
    user = authenticate(credentials)
except AuthError as e:
    log.error(f'Auth failed: {e}')
    raise
# ... existing code ..."
添加日志
uv run python -m runtime.harness scripts/mcp/morph_apply.py \
    --file "src/api.py" \
    --instruction "Add debug logging" \
    --code_edit "# ... existing code ...
logger.debug(f'Processing request: {request.id}')
# ... existing code ..."
TypeScript 示例
uv run python -m runtime.harness scripts/mcp/morph_apply.py \
    --file "src/types.ts" \
    --instruction "Add user validation" \
    --code_edit "// ... existing code ...
if (!user) throw new Error('User not found');
if (!user.isActive) throw new Error('User inactive');
// ... existing code ..."

参数

参数说明
--file要编辑的文件路径(必填)
--instruction对更改内容的自然语言描述(必填)
--code_edit带有标记、用于指示编辑位置的代码片段(必填)

与 Claude 的 Edit 工具对比

工具最适合的场景
morph-apply快速编辑、无需先读取文件、大型文件、批量编辑
Claude Edit文件已在上下文中时进行小范围精准编辑

在以下情况下使用 morph-apply:

  • 文件不在上下文中,读取文件成本很高
  • 文件非常大(>500 行)
  • 一次进行多项相关编辑
  • 你知道更改涉及的上下文(函数名、类等)

在以下情况下使用 Claude Edit:

  • 之前已通过 Read 将文件放入上下文中
  • 需要精确匹配新旧字符串的精准编辑
  • 小型文件(<200 行)

需要 MCP 服务

需要在 mcp_config.json 中配置 morph 服务和 MORPH_API_KEY。

性能

  • 速度:每秒 10,500 个 token
  • 准确率:98% 的放置准确率
  • 节省 token:无需先读取整个文件

评论

支持 Markdown