diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fe40168..bcc467d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -52,7 +52,7 @@ jobs: version: nightly - name: luajit - uses: leafo/gh-actions-lua@v11 + uses: leafo/gh-actions-lua@v13 with: luaVersion: "luajit-openresty" diff --git a/AGENTS.md b/AGENTS.md index 6e2312e..85010d5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -13,7 +13,7 @@ - **Issue Tracking:** GitHub Issues - **Additional Docs:** `README.md` for user documentation -______________________________________________________________________ +--- ## ๐Ÿ—‚๏ธ Repository Structure @@ -44,7 +44,7 @@ hurl.nvim/ โ””โ”€โ”€ version.txt # Version info ``` -______________________________________________________________________ +--- ## ๐Ÿšฆ Quick Start @@ -83,7 +83,7 @@ ______________________________________________________________________ }) ``` -______________________________________________________________________ +--- ## ๐Ÿง‘โ€๐Ÿ’ป Development Guidelines @@ -208,25 +208,28 @@ end, {}) - **HTTP Processing:** The plugin uses the external `hurl` command to execute requests and process responses with configurable formatters. -______________________________________________________________________ +--- ## ๐Ÿ› ๏ธ Common Commands & Development Workflow ### Development Commands - **Setup development environment:** + ```bash # Install vusted for testing make install ``` - **Run tests:** + ```bash make test # Run all tests vusted test/ # Direct vusted execution ``` - **Format code:** + ```bash stylua lua/ test/ # Format Lua code (if stylua is installed) ``` @@ -240,6 +243,7 @@ ______________________________________________________________________ ### Plugin Commands - **Basic usage:** + ```vim :HurlRunner " Run entire .hurl file :HurlRunnerAt " Run request at cursor @@ -255,7 +259,7 @@ ______________________________________________________________________ :HurlSetEnvFile custom.env " Set custom env file ``` -______________________________________________________________________ +--- ## ๐Ÿงฉ Agent Code Integration @@ -286,7 +290,7 @@ ______________________________________________________________________ - **Async operations:** Use `vim.schedule` for UI updates from async contexts - **Command registration:** Use `vim.api.nvim_create_user_command` with proper options -______________________________________________________________________ +--- ## ๐Ÿงช Testing & Quality Assurance @@ -304,7 +308,7 @@ ______________________________________________________________________ - **Performance:** Ensure UI responsiveness and efficient request handling - **Compatibility:** Test with multiple Neovim versions -______________________________________________________________________ +--- ## ๐Ÿ“ Documentation & Examples @@ -320,7 +324,7 @@ ______________________________________________________________________ - **Function documentation:** EmmyLua annotations for all public functions - **Architecture decisions:** Document design choices and trade-offs -______________________________________________________________________ +--- ## ๐Ÿ›ก๏ธ Security & Best Practices @@ -338,7 +342,7 @@ ______________________________________________________________________ - **Caching:** Cache environment variables and parsed configurations - **Resource cleanup:** Proper cleanup of buffers and windows -______________________________________________________________________ +--- ## ๐Ÿท๏ธ Branching & Workflow @@ -356,26 +360,26 @@ ______________________________________________________________________ - **Documentation:** Update README and help docs - **Tagging:** Proper git tagging for releases -______________________________________________________________________ +--- ## ๐Ÿงญ Quick Reference -| Task | Command/Location | -| ----------------------------- | ----------------------------------- | -| Run tests | `make test` | -| Install test dependencies | `make install` | -| Format code | `stylua lua/ test/` | -| Main plugin file | `lua/hurl/init.lua` | -| Core functionality | `lua/hurl/main.lua` | -| UI components | `lua/hurl/popup.lua`, `split.lua` | -| Utilities | `lua/hurl/utils.lua` | -| Tests | `test/*.lua` | -| Documentation | `README.md` | -| Configuration | `_HURL_GLOBAL_CONFIG` global | -| Commands | `:Hurl*` commands | -| Environment files | `vars.env` (configurable) | - -______________________________________________________________________ +| Task | Command/Location | +| ------------------------- | --------------------------------- | +| Run tests | `make test` | +| Install test dependencies | `make install` | +| Format code | `stylua lua/ test/` | +| Main plugin file | `lua/hurl/init.lua` | +| Core functionality | `lua/hurl/main.lua` | +| UI components | `lua/hurl/popup.lua`, `split.lua` | +| Utilities | `lua/hurl/utils.lua` | +| Tests | `test/*.lua` | +| Documentation | `README.md` | +| Configuration | `_HURL_GLOBAL_CONFIG` global | +| Commands | `:Hurl*` commands | +| Environment files | `vars.env` (configurable) | + +--- ## ๐Ÿง  Additional Instructions @@ -400,7 +404,7 @@ ______________________________________________________________________ - **History management:** Track and replay previous requests - **Git integration:** Discover project root and environment files using git context -______________________________________________________________________ +--- ## ๐Ÿ Final Notes @@ -410,4 +414,4 @@ ______________________________________________________________________ - **Maintain backwards compatibility** when possible - **Document breaking changes** clearly in changelog and migration guides - **Test with real .hurl files** to ensure practical functionality -- **Consider integration** with other Neovim plugins and LSP servers \ No newline at end of file +- **Consider integration** with other Neovim plugins and LSP servers