Claude Code Prompt Improver plugin
A hook plugin that adds context to a Claude Code prompt and asks one to six grounded questions when a request is vague.
- 1,969 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- Hooks run the `engine.py` script on every prompt and every Bash call, and the hints change Claude Code behavior, including the choice between planning and direct execution.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add plugins/claude-code-prompt-improverDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Hooks run the `engine.py` script on every prompt and every Bash call, and the hints change Claude Code behavior, including the choice between planning and direct execution.
This is third-party code. Review the repository files before installing.
What it does
The plugin fires on three Claude Code events: when a prompt is submitted, before a tool call and when a subagent starts. At the right moment it places short hints into the conversation so Claude gets missing context before acting rather than after a failed attempt. The main hint, `improve`, judges the clarity of every prompt. A clear request passes with no extra steps. For a vague one the `prompt-improver` skill is called: Claude builds a research plan, gathers context from the project and asks one to six questions through the `AskUserQuestion` tool with ready answer options. The other hints fire on conditions: an approach assessment for a non-trivial task, a plan before multi-step work, readability of a large answer, running long commands in the background and hints for research subagents. Hints are described in JSON files in the `nudges/` directory, and the `scripts/engine.py` engine reads them on every event.
Who it is for. Claude Code users who often write short requests such as "fix the error" and are tired of extra clarification rounds after a wrong first attempt.
Good fit when
- The request "fix the error" names no file and Claude must clarify which error is meant.
- A big refactoring needs an approach assessment: a subagent, orchestration or direct execution.
- A long command such as a dev server should go to the background and its output be read selectively.
- A long answer arrives as a wall of text and a conclusion first, sections and tables are needed.
- A fork in the task needs your decision instead of a silent default choice.
Not a fit when
- You write precise, detailed prompts: the plugin changes little while hooks add calls on every event.
- Work in scripts without questions is needed: hints can trigger clarifications, so such requests start with an asterisk.
- The Claude Code version is older than 2.0.22: the `AskUserQuestion` tool is unavailable.
Example request
Fix the error in the app.Limitations
Claude Code 2.0.22 or newer is required because questions go through `AskUserQuestion`. Hooks run `python3 scripts/engine.py` on every event, and hints cost tokens: the author puts the clarity evaluation at about 189 tokens per prompt. Hints are skipped for slash commands, lines starting with an asterisk or a hash, and for harness messages that arrive as prompts. Manual installation requires copying `scripts` and `nudges` side by side and editing `~/.claude/settings.json`. The last commit is from 1 October 2026.
How to disable. Remove the plugin in the `/plugin` window and restart Claude Code. For a manual install remove the three hooks from `~/.claude/settings.json` and the `~/.claude/hooks/prompt-improver` directory. A `*` prefix at the start of a prompt skips the evaluation once.
FAQ
How do I install the plugin?
`claude plugin marketplace add severity1/severity1-marketplace`, then `claude plugin install prompt-improver@severity1-marketplace`. After that restart Claude Code and check the list with `/plugin`.
How do I skip prompt evaluation?
Start the request with an asterisk: `* add dark mode`. Slash commands pass without evaluation, and a line starting with `#` saves a note to memory.
How many questions does the plugin ask?
From one to six, and only when the request is genuinely vague. A clear prompt runs at once with no questions and no skill load.
Which hooks does it add?
`UserPromptSubmit`, `PreToolUse` for `EnterPlanMode` and `Bash`, and `SubagentStart`. All three call `engine.py`.
Can I install it without the marketplace?
Yes. Copy `engine.py`, `rules.py`, `nudge_builtins.py` and the `nudges` directory into `~/.claude/hooks/prompt-improver` and add the three hooks to `~/.claude/settings.json`.
Discussion
No questions or reviews yet.
Related
PluginsA plugin with six working skills and a prompt library: routing a task to a prompt, pre-commit checks and skill audits.
The author's personal Claude Code toolbox: meta-prompt and todo commands, skills to create skills, hooks and MCP servers, auditors and a Ralph loop
RePrompter interviews you about a rough request and turns it into a scored, structured prompt or a build prompt for a project.
Claude Code Prompts (RepoWise)
claude-code-prompts
Independently written prompt templates for AI coding agents: system prompts, tool prompts, delegation, memory and multi-agent coordination
A skill that writes precise prompts tailored to a specific tool: Cursor, Claude Code, Midjourney, Stable Diffusion and more
claude-code-system-prompts
Claude Code System Prompts
A reference of Claude Code system prompts: parts of the system prompt, tool descriptions and built-in agent prompts
README in short
The author treats prompt improvement as the whole path from request to output, not only rewriting words. Version 0.4.0 moved to a skill-based architecture and, by the author's account, cut token use by 31 percent.