ClaudeMods
☰
ZH-CN
● 0 人在线 · 浏览 0 次
赞助提交作品
GitHub 仓库 · 发布者 akilin

better-tool-rows

一个 Claude Code 插件,渲染更短、更安静的工具行:相对的 Read/Edit/Write 路径、代替 diff 的 +/- 行数、单行 Bash 命令,以及折叠的长输出。

akilin@akilin

akilin/claude-plugins/tree/main/plugins/better-tool-rows

原帖图片1
已翻译

关于这个 mod

better-tool-rows 是 Claude Code 插件,只改变工具行在终端中的渲染方式。Read/Edit/Write 会显示相对于会话资料夹的文件路径(完整路径仍藏在连结后面);Edit/Write 会隐藏 diff,并在该行显示 +/- 行数;连续的编辑会移除空白分隔行;Bash 命令会合并为一行并以省略号截断;创建或删除文件的 Bash 命令会列出每个文件及行数;超过 5 行的 Bash 输出会折叠到可点击的行数后面。通过 akilin/claude-plugins marketplace 安装。采用 MIT 许可。姊妹插件 prompt-bubbles 会把使用者提示绘制成右对齐的气泡。

安装

请先查看作者 README 确认 marketplace 和插件名称;命令可能随仓库结构改变。

claude plugin marketplace add akilin/claude-plugins
claude plugin install better-tool-rows
原文 / README

claude-plugins

Claude Code plugins that change how the terminal UI looks. They only change rendering: what the model sees and does is untouched.

Install

/plugin marketplace add akilin/claude-plugins
/plugin install better-tool-rows@akilin-plugins
/plugin install prompt-bubbles@akilin-plugins

Screenshots

With both plugins:

A session with better-tool-rows and prompt-bubbles

The same session without them (zoomed out to fit on one screen):

The same session without the plugins

Plugins

better-tool-rows

Shorter, quieter tool rows.

  • Read / Edit / Write show the file path relative to the folder Claude Code was started in (the link behind it still holds the full path, so ctrl+click opens it from anywhere), even after Claude cds elsewhere or /cd moves the project. Files outside the folder keep their full path. Windows paths match with either separator and in any case.
  • Edit / Write hide the diff and put the line counts on the row instead: Update(notes.md) +3 -1. A path too long to fit on the line with its counts is cut to its end (Update(…/src/notes.md) +3 -1), still opening the full path on ctrl+click. An edit held for review rather than written is shown as usual.
  • A tool row straight after a one-line Edit / Write row drops the blank line above it, so a run of edits reads as a list. After text, or after a row with lines beneath it (Bash output, Read's Read 7 lines), the blank line stays.
  • Bash commands are put on one line (a multi-line command's lines are joined) and cut with … so Bash(command) always fits on one line, wide characters included.
  • Bash commands that create or delete files list each one beneath the row with its line count (Created notes.md +10, Deleted notes.md -10) instead of a diff of all the lines each file has or had.
  • Bash output longer than 5 lines is folded behind a clickable ▸ 12 lines; unfolded, it shows up to 500 lines and counts the rest. If the command was cut or joined, the fold also holds the full command with syntax highlighting (▸ command, 12 lines); with 5 lines of output or fewer, the output stays as it is and the fold holds the command alone (▸ command).

prompt-bubbles

Your own prompts are drawn as right-aligned chat bubbles (a rounded box with a cornflower-blue border, as wide as the longest line and at most three quarters of the terminal) so they stand apart from Claude's replies. Task notifications and messages from other agents or sessions keep the usual drawing, and so does the desktop app, which already has bubbles.

Development

The repo has a dev container (Node, TypeScript and Claude Code preinstalled). It keeps Claude Code's config in a volume of its own, so logins and settings survive a rebuild, and sets VS Code's chat to auto-approve tool calls (chat.permissions.default), which is only safe inside the container.

From a plugin's folder (e.g. plugins/better-tool-rows):

claude plugin validate .
claude plugin test .
npx -y -p typescript tsc -p tsconfig.json

tsc needs the API types Claude Code writes to .claude-plugin/types/ (gitignored) when it loads the plugin, so on a fresh clone load it once first, e.g. claude --plugin-dir plugins/better-tool-rows.

License

MIT

更多类似作品