Skip to content

ファイルシステムとシェルツール

Triggerfishはエージェントに読み取り、書き込み、検索、コマンド実行のための汎用ファイルシステムと シェルツールを提供します。これらは他の機能(exec環境、explore、スキル)が構築する基本ツールです。

ツール

read_file

絶対パスのファイルの内容を読み取ります。

パラメータータイプ必須説明
pathstringはい読み取るファイルの絶対パス

ファイルの完全なテキストコンテンツを返します。

write_file

ワークスペース相対パスのファイルにコンテンツを書き込みます。

パラメータータイプ必須説明
pathstringはいワークスペース内の相対パス
contentstringはい書き込むファイルコンテンツ

書き込みはエージェントのワークスペースディレクトリにスコープされます。エージェントはファイルシステム上の 任意の場所に書き込むことができません。

edit_file

ファイル内のユニークな文字列を置き換えます。old_textはファイル内に正確に1回出現する必要があります。

パラメータータイプ必須説明
pathstringはい編集するファイルの絶対パス
old_textstringはい見つける正確なテキスト(ファイル内で一意)
new_textstringはい置換テキスト

これは精密な編集ツールです — 1つの正確な一致を見つけて置き換えます。テキストが複数回または全く 存在しない場合、操作はエラーで失敗します。

list_directory

指定された絶対パスのファイルとディレクトリをリストします。

パラメータータイプ必須説明
pathstringはいリストするディレクトリの絶対パス

ディレクトリには/サフィックスを付けてエントリを返します。

search_files

Globパターンに一致するファイルを検索するか、grepでファイルの内容を検索します。

パラメータータイプ必須説明
pathstringはい検索するディレクトリ
patternstringはいファイル名のGlobパターン、またはファイル内で検索するテキスト/正規表現
content_searchbooleanいいえtrueの場合、ファイル名の代わりにファイルの内容を検索

run_command

エージェントワークスペースディレクトリでシェルコマンドを実行します。

パラメータータイプ必須説明
commandstringはい実行するシェルコマンド

stdout、stderr、終了コードを返します。コマンドはエージェントのワークスペースディレクトリで実行されます。 PRE_TOOL_CALLフックは実行前にデナイリストに対してコマンドを確認します。

他のツールとの関係

これらのファイルシステムツールはExec環境ツール(exec.writeexec.readexec.runexec.ls)と重複します。区別:

  • ファイルシステムツールは絶対パスとエージェントのデフォルトワークスペースで動作します。常に 利用可能です。
  • Execツールは明示的な分離、テストランナー、パッケージインストールを持つ構造化されたワークスペース 内で動作します。exec環境統合の一部です。

エージェントは一般的なファイル操作にはファイルシステムツールを使用し、開発ワークフロー(書く/実行/修正のループ) で作業する場合はexecツールを使用します。

セキュリティ

  • write_fileはエージェントのワークスペースディレクトリにスコープされます
  • run_commandはコマンドをコンテキストとしてPRE_TOOL_CALLフックを通過します
  • コマンドデナイリストが危険な操作をブロックします(rm -rf /sudoなど)
  • すべてのツールレスポンスは分類とtaintトラッキングのためにPOST_TOOL_RESPONSEを通過します
  • プランモードでは、計画が承認されるまでwrite_fileはブロックされます