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 トークンを処理し、精度は 98%です。

使用する場面

  • ファイル全体を事前に読み込まずにすばやく編集したい場合
  • 1 つのファイルに対してまとめて編集したい場合(1 回の操作で複数の変更)
  • 変更内容はわかっているものの、ファイルが大きい場合
  • 読み込みに多くのトークンを消費する大きなファイルを扱う場合

重要なパターン:コードマーカー

編集箇所を示すには、// ... 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 サーバーが必要です

MORPH_API_KEY を設定した mcp_config.json の morph サーバーが必要です。

パフォーマンス

  • 速度:毎秒 10,500 トークン
  • 精度:配置の正確さは 98%
  • トークンの節約:ファイル全体を事前に読み込む必要はありません

コメント