PROMPTRは、Plain Englishを使用してOpenai LLMモデルに指示するようにコードベースに変更を加えることができるCLIツールです。変更は、プロンプトから参照するファイルに直接適用されます。
promptr [options] -p "your instructions" <file1> <file2> <file3> ...
これは良いワークフローであることがわかりました:
-pオプションを使用してプロンプトファイルへのパスを提供しますpromptr -p my_prompt.txtPROMPTRは、モデルのコードをファイルに直接適用します。お気に入りのGit UIを使用して、結果を調べてください。
以下のPRは、PROMPTRを使用して達成できるものの良い例です。個々のコミットメントへのリンクと、PRの説明で作成したプロンプトを見つけることができます。
PROMPTRは、LiquidJSを使用したテンプレートをサポートしています。これにより、ユーザーはプロンプトファイルにテンプレートコマンドを組み込むことができます。この機能は、特に繰り返しパターンや標準を持つより大きなプロジェクトに取り組む場合、プロンプトの柔軟性と再利用性を高めます。
プロジェクトには、プロンプトファイルから含めることができる1つ以上の「コードまたは命令の再利用可能なスニペット」を含めることができます。これらには、プロジェクト固有の標準、命令、またはコードパターンが含まれる場合があり、ユーザーがコードベース全体で一貫性を維持できるようにします。
たとえば、次のコンテンツを含む_poject.liquidという名前のinclude fileがあります。
This project uses Node version 18.
Use yarn for dependency management.
Use import not require in Javascript.
Don't include `module.exports` at the bottom of Javascript classes.
Alphabetize method names and variable declarations.プロンプトファイルでは、LiquidJSのrender関数を使用して、これを含むプロンプトファイルにファイルを含めることができます。
{% render '_project.liquid' %}
// your prompt hereこのアプローチにより、複数のプロジェクトまたは同じプロジェクトのさまざまな部分で共有できるファイルを含めることができます。
プロジェクト全体のコーディング標準:コーディング標準を概説するコメントを含むインクルードファイルを作成し、プロジェクトのすべての新しいコードファイルに含める。
ボイラープレートコード:アプリケーションのさまざまな部分(モデル定義、APIエンドポイントなど)のボイラープレートコードスニペットのセットを開発し、必要に応じてそれらを含めます。
共有手順:特定のタスク(機能を文書化する方法など)の手順またはガイドラインのセットを維持し、それらを関連するプロンプトファイルに含めます。
テンプレート機能を活用することにより、迅速なエンジニアは冗長性を大幅に減らし、迅速な作成の一貫性を確保し、コードベースのより効率的で標準化された変更につながります。
| オプション | 説明 |
|---|---|
-p, --prompt <prompt> | 非対話モードで使用するプロンプトを指定します。パスまたはURLを指定することもできます。この場合、指定されたパスまたはURLのコンテンツがプロンプトとして使用されます。プロンプトは、LiquidJSテンプレートシステムを活用できます。 |
-m, --model <model> | モデルを設定するオプションフラグは、デフォルトでgpt-4oになります。値「GPT3」を使用するとgpt-3.5-turboモデルが使用されます。 |
-d, --dry-run | モデルに送信されるプロンプトのみが表示されるドライランモードでツールを実行するために使用できるオプションのブールフラグ。このオプションが使用されている場合、ファイルシステムに変更は行われません。 |
-i, --interactive | ユーザーがインタラクティブに入力を提供できるインタラクティブモードを可能にするオプションのブールフラグ。このフラグが設定されていない場合、ツールは非対話モードで実行されます。 |
| `-t、 - template <templatename | TemplatePath |
-x | オプションのブールフラグ。 PROMPTRは、モデルの応答を解析し、デフォルトのテンプレートを使用するときに結果の操作をファイルシステムに適用します。独自のテンプレートを作成した場合には-xフラグを渡す必要があり、内蔵の「リファクタリ」テンプレート出力が解析され、ファイルシステムに適用されるのと同じ方法で、PROMPTRを解析して適用する必要があります。 |
-o, --output-path <outputPath> | 出力ファイルへのパスを指定するオプションの文字列フラグ。このフラグが設定されていない場合、出力はstdoutに印刷されます。 |
-v, --verbose | 冗長出力を可能にするオプションのブールフラグがあり、実行中により詳細な情報を提供します。 |
-dac, --disable-auto-context | プロンプトで参照されているファイルが、モデルに送信されたコンテキストに自動的に含まれることを防ぎます。 |
--version | バージョンを表示して終了します |
追加のパラメーターは、プロンプトのコンテキストとして含まれるファイルへのパスを指定できます。パラメーターはスペースによって分離する必要があります。
yarn global add @ifnotnowwhen/promptr
npm install -g @ifnotnowwhen/promptr
現在のリリースのバイナリをパスにコピーして、PROMPTRをインストールできます。現在サポートされています。
OPENAI_API_KEYと呼ばれる環境変数には、OpenAI API Secretキーが含まれることが期待されています。
npm run bundle
npm run build:<platform win|macos|linux>
npm run test-binary
PROMPTRはMITライセンスの下でリリースされます。