mcpField
D
desktop-commander

desktop-commander

github.com/ry-runエージェントワークフロー1285 回インストール29 週間前に更新
リポジトリ

desktop-commander について

Desktop Commanderは、MCPツールでファイルの読み書き、検索、プロセス管理を行うためのスキルです。ローカル環境の作業を段階的に検証し、高リスク操作には明示的な承認を求めます。

主な機能

  1. 01テキスト・PDF・画像・表計算ファイルのページ単位読み込み
  2. 02ファイル名と内容の検索
  3. 03部分編集または分割書き込み
  4. 04プロセスの起動と対話的な操作
  5. 05設定・ツール呼び出し履歴・使用状況の確認

活用シーン

  1. 01コードベース内のファイルや文字列の検索
  2. 02ログ・PDF・表計算ファイルの内容確認
  3. 03大きなファイルの分割編集や表計算範囲の更新
  4. 04対話型シェル・REPL・開発サーバーの実行

MCP 対応

Desktop Commander MCPツールを使ってファイル操作、検索、プロセス管理を行い、それらの手順と安全上の指針を示します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/ry-run/run-skills --skill desktop-commander

インストール後、Claude Code で/desktop-commanderを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

SKILL_zh.md
agents/
openai.yaml
references/
desktop-commander_zh.md
desktop-commander.md

詳細

Desktop Commander

クイックスタート

目的:Desktop Commander MCP を使って、「ファイル/プロセス/検索/編集」を検証可能なツール呼び出し(小さく安全な手順)に置き換え、マシンをブラックボックスとして扱わないようにします。

よく使われる開始方法:

  • 内容を読む:mcp__desktop-commander__read_file(ページネーション、負のオフセットによる末尾の読み取り、PDF/画像/Excel/URL)。
  • 小規模な編集:mcp__desktop-commander__edit_block(対象を絞ったテキスト置換/Excel の範囲更新)。
  • 大規模な編集:mcp__desktop-commander__write_file をチャンク単位で使用します(fileWriteLineLimit を守ってください)。
  • 対話型の作業:mcp__desktop-commander__start_process + mcp__desktop-commander__interact_with_process + mcp__desktop-commander__read_process_output。

公式メモとツール一覧:skills/desktop-commander/references/desktop-commander.md。

ワークフローの判断ツリー

  1. 何かを見つける必要がありますか?
  • ファイル名/パス:mcp__desktop-commander__start_search(searchType="files")→ mcp__desktop-commander__get_more_search_results
  • ファイルの内容:mcp__desktop-commander__start_search(searchType="content")→ ページネーション → 完了したら mcp__desktop-commander__stop_search
  1. 内容を読む、または変更する必要がありますか?
  • 読み取り:mcp__desktop-commander__read_file(offset/length を使用し、末尾を読むには offset=-N を使用)
  • 小規模な変更:mcp__desktop-commander__edit_block(既定では 1 件を置換します。複数件の場合は expected_replacements を使用)
  • 大規模な変更:mcp__desktop-commander__write_file(mode="rewrite" の後、チャンク単位で mode="append")
  1. コマンドを実行する、またはセッションを維持する必要がありますか?
  • 単発コマンド:mcp__desktop-commander__start_process(シェルコマンド)+ 出力の読み取り
  • REPL/SSH/DB/開発サーバー:start_process → interact_with_process → read_process_output
  1. 高リスクな操作ですか(設定変更、プロセスの終了、大量の編集/移動、データ損失を伴う操作)?
  • 実行前に影響とロールバック方法を説明し、ユーザーから明示的な確認を得てください。
  • 設定変更は、別のチャットで行うことを推奨します(公式ガイダンス)。

レシピ

ファイルの読み取り
  • テキスト/コード:ページネーションを使って read_file を実行します。ログ:offset=-200(末尾の読み取り)。
  • 複数ファイル:read_multiple_files を使って、やり取りの回数を減らします。
  • URL:Web の内容/画像には isUrl: true を指定して read_file を実行します。
ファイルの編集
  • 対象を絞った置換:一意性の高い最小限のコンテキストを指定して edit_block を実行します。複数箇所の場合は expected_replacements を設定します。
  • 全面的な書き換え:write_file を 25~30 行ずつのチャンクで使用します(rewrite の後に append)。
  • Excel:read_file で読み取り、range と 2D 配列を指定して edit_block で編集します。
  • PDF:write_pdf のみを使用します(PDF に write_file は使用しないでください)。
検索
  • リポジトリの探索には start_search + get_more_search_results を優先し、不要になった検索は停止してください。
  • 特殊文字(括弧、角括弧、ピリオドなど)を含むパターンには literalSearch: true を使用します。
プロセスと対話
  • データ分析:python3 -i を実行し、pandas/numpy のワークフローには interact_with_process を使用します。
  • 長時間実行されるジョブの監視:定期的に read_process_output を呼び出します。停止するには kill_process/force_terminate を使用します(高リスク)。
  • 状態の確認:list_sessions/list_processes。
設定と監査
  • get_config/set_config_value:慎重に使用してください。ディレクトリ制限は、ターミナルコマンドに対するセキュリティ境界ではありません。
  • get_recent_tool_calls:「何が起きたか」のコンテキストを復元し、問題をデバッグします。
  • get_usage_stats:使用状況/パフォーマンスの分析に役立ちます。

ガードレール(必ず守ること)

  • 絶対パスを優先し、OS 固有の区切り文字を前提にしないでください。
  • 大きな変更では、まず読み取り、小さな編集を行い、書き込みをチャンクに分け、ロールバックを考慮してください。
  • 高リスクの操作には明示的な確認が必要です:設定変更、セッション/プロセスの終了、大量のファイル編集/移動、破壊的なコマンド。
  • セキュリティ:allowedDirectories が制限するのはファイルシステムツールであり、ターミナルコマンドではありません。サンドボックスとして扱わないでください。

参考資料

  • 公式メモとツール一覧:skills/desktop-commander/references/desktop-commander.md

コメント