howtofixcli 0.4.31 → 0.4.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/main.js +121 -111
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -109,6 +109,7 @@ the models; models you configured by hand are never overwritten.
|
|
|
109
109
|
- **Tools** — `read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`, plus `think` (private scratchpad), `ask` (multiple-choice question to the user), and `task` (background agents).
|
|
110
110
|
- **Web search and fetch** — `web_search` and `web_fetch` read public http(s) URLs; local, loopback, and RFC1918 addresses are refused before any request is made. Search defaults to DuckDuckGo, with an optional `BRAVE_API_KEY` upgrade.
|
|
111
111
|
- **Language server queries** — the read-only `lsp` tool asks a language server for definition, references, hover, symbols, or diagnostics. It needs the matching server on PATH (`typescript-language-server` for this repo); a missing binary comes back as a tool result that says so.
|
|
112
|
+
- **Hooks** — `hooks.json` in the config root attaches shell commands to seven lifecycle points (`PreToolUse`, `PostToolUse`, `UserPromptSubmit`, `SessionStart`, `Stop`, `PreCompact`, `SessionEnd`). A hook reads a JSON payload on stdin and decides with its exit code: `0` allows, `2` blocks with its stderr as the reason. A `PreToolUse` hook can also **rewrite** a call's arguments with `updatedInput` — validated against the tool's own schema, so a hook cannot make the agent run something it never asked for. A `PreToolUse` hook outranks the approval mode, so it holds under `full-auto` too. `async` and `once` are supported. See `docs/hooks.md`.
|
|
112
113
|
- **Sessions** — stored as JSONL under `~/.howtofix/agent/sessions/<project>/`. `-c` continues the latest; `/resume` picks any of them.
|
|
113
114
|
- **Project notes** — `/init` writes an `AGENTS.md` and asks the agent to fill it in; it is loaded into the system prompt on later runs.
|
|
114
115
|
- **`@file`** — `@src/main.ts` in a prompt inlines the file; paths that do not exist are left alone for the agent to read.
|