ekinertac/claude-code-mods/tree/master/prompt-box
prompt-box
一个 Claude Code mod,把你输入的提示画在回滚缓冲区的粗青色框中,而不是单独的 `> text` 行;任务通知和其他会话的消息仍保持普通行样式。可从 ekinertac-mods 插件市场安装,不需要按键绑定。
关于这个 mod
prompt-box 是 ekinertac/claude-code-mods 中的一个 Claude Code mod,通过 hooks 模块改变提示在回滚缓冲区中的显示方式:你输入的提示会画在粗青色框内,而不是单独一行 > text;任务通知和其他会话的消息则保持原来的行样式,不需要设置任何按键绑定。安装方式是先执行 claude plugin marketplace add ekinertac/claude-code-mods,再执行 claude plugin install prompt-box@ekinertac-mods。该 mod 在 Claude Code 2.1.287 上测试过,事件和方法可能随版本变化;可以运行 claude plugin test prompt-box,在不需要网络、模拟模型的情况下执行测试。
安装
请先查看作者 README 确认 marketplace 和插件名称;命令可能随仓库结构改变。
claude plugin marketplace add ekinertac/claude-code-mods claude plugin install prompt-box
原文 / README
claude-code-mods
Claude Code mods I use daily.
rewrite-prompt: press Ctrl+P and the draft in the prompt box is rewritten in place by a model (Sonnet, on your plan). Nothing is sent until you press Enter, and Ctrl+_ undoes it.write-for-me: press Ctrl+N and the next prompt is written for you from the last 12 messages of the conversation. If the box has text, it is used as a hint ("tests too") and expanded. Nothing is sent, and Ctrl+_ undoes it.prompt-box: the prompts you type are drawn in the scrollback inside a thick cyan box instead of one> textline. Task notifications and messages from other sessions keep their normal rows. No key binding needed.tool-oneline: each tool call is drawn as one line (⏺ Bash(echo hello) (ctrl+o to expand)) with no result block under it. Setdetailtorunsfor one line per run of calls (⏺ Ran 3 tools: Bash ×2, Read). Ctrl+O still shows the full rows. A failed call keeps its error text.
Setup
claude plugin marketplace add ekinertac/claude-code-mods
claude plugin install rewrite-prompt@ekinertac-mods
claude plugin install write-for-me@ekinertac-mods
claude plugin install prompt-box@ekinertac-mods
claude plugin install tool-oneline@ekinertac-mods
Then bind the keys. Add these to the Global block of ~/.claude/keybindings.json and start a new session:
"ctrl+p": "app:toggleDiffNoiseFilter",
"ctrl+n": "app:toggleDiffPreSession"
To use the runs level, add this to ~/.claude/settings.json:
"pluginConfigs": { "tool-oneline": { "options": { "detail": "runs" } } }
How the shortcut works
No keybinding action runs a mod command. The mod draws a zero-size button above the prompt whose action is app:toggleDiffNoiseFilter (inert outside the diff panel; write-for-me uses app:toggleDiffPreSession the same way, so the two never share an action), and the chord you bind to that action presses it. Nothing shows on screen.
Limits
- Tested on Claude Code 2.1.287. Mod events and methods can change between releases.
- The rewrite replaces the draft. It keeps the intent, language and concrete details, and adds no requirements.
- Not checked in every terminal: if you see a blank row above the prompt, open an issue.
- Tests:
claude plugin test <mod>(stubs the model, no network).
