PROMPTR是一種CLI工具,可讓您使用普通英語來指示OpenAI LLM型號對您的代碼庫進行更改。更改直接應用於您從提示符中引用的文件。
promptr [options] -p "your instructions" <file1> <file2> <file3> ...
我發現這是一個很好的工作流程:
-p選項: promptr -p my_prompt.txt提供提示文件的路徑PROMPTR將直接將模型的代碼應用於您的文件。使用您喜歡的Git UI檢查結果。
下面的PR是使用Promptr可以完成的工作的好示例。您可以找到指向單個提交的鏈接以及在PR描述中創建它們的提示。
PROMPTR支持使用LiquidJS進行模板,這允許用戶將模板命令合併到其提示文件中。此功能增強了提示的靈活性和可重複性,尤其是在處理具有重複模式或標準的較大項目時。
項目可以具有一個或多個“包括”的“代碼或說明”段,可以從提示文件中包含。其中包括可能包含特定於項目的標準,說明或代碼模式,使用戶能夠在其代碼庫中保持一致性。
例如,您可能有一個名為_poject.liquid的包含文件,其中包含以下內容:
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 | 模板路徑 |
-x | 可選的布爾國旗。 PROMPTR解析模型的響應,並在使用默認模板時將結果操作應用於文件系統。您只需要在創建自己的模板時傳遞-x標誌,並且希望Progptr以與“重構”模板輸出中的內置模板輸出相同的方式進行分析和應用輸出。 |
-o, --output-path <outputPath> | 可選的字符串標誌指定輸出文件的路徑。如果未設置此標誌,則將輸出打印到Stdout。 |
-v, --verbose | 可選的布爾標誌,可啟用詳細輸出,在執行過程中提供更詳細的信息。 |
-dac, --disable-auto-context | 防止提示中引用的文件自動包含在發送到模型的上下文中。 |
--version | 顯示版本和退出 |
其他參數可以指定將作為上下文中包含在提示中的文件的路徑。參數應由空間分開。
yarn global add @ifnotnowwhen/promptr
npm install -g @ifnotnowwhen/promptr
您可以通過將當前版本的二進製文件複製到路徑來安裝ProMPTR。目前僅支持MacOS。
一個稱為OPENAI_API_KEY的環境變量預計將包含您的OpenAI API秘密密鑰。
npm run bundle
npm run build:<platform win|macos|linux>
npm run test-binary
PROMPTR由MIT許可發布。