hacksurvivor/claude-mods/tree/main/mods/grudge

一个 Claude Code mod,把每次被拒绝的 UI 外观变成项目规则,并与截图一起保存;当 Claude 未经批准的预览就编辑 UI 文件时发出警告。
hacksurvivor/claude-mods/tree/main/mods/grudge

Grudge 让你通过截图或评论拒绝某个 UI 外观,然后请求 Claude 将其转换为一条与截图放在一起的项目规则。规则会显示在 Claude 的回复下方,并带有 Undo 选项。在任何 UI 编辑之前,Claude 都会收到项目规则,以及两个习惯:在发明 UI 前先寻找真实参考,并在产生新外观前显示预览。它还会标记本会话中没有经过预览批准的 UI 变更。"looks right" 等批准,或选择某个预览变体,也会成为规则。命令:/grudge 列出规则,/grudge forget N 删除一条,/grudge add <rule> 写入一条,/grudge off 和 /grudge on 暂停及恢复。需要 Claude Code 2.1.286+,并需要 PATH 中有 Python 3,以便从工作阶层转录复制截图。通过 /plugin marketplace add hacksurvivor/claude-mods 安装,然后执行 /plugin install grudge@hacksurvivor 和 /reload-plugins。它会读取你输入的消息、Claude 编辑的文件路径,并将截图从 ~/.claude/projects 复制到 ~/.claude/grudge/<project>/;不会自行发送任何内容。采用 Apache-2.0 许可证。
请先查看作者 README 确认 marketplace 和插件名称;命令可能随仓库结构改变。
claude plugin marketplace add hacksurvivor/claude-mods claude plugin install grudge
A Claude Code mod that holds a grudge against every look you reject, so Claude never brings it back.
You reply "this is slop" with a screenshot, or "again the old top bar". Grudge asks Claude to turn that into one rule for the project, written after it has looked at your screenshot, and keeps the screenshot with it. A line under Claude's reply shows what was noted, with Undo:
Noted for shop-app: keep the R4 top bar in every theme · Undo
The next time Claude edits a UI file in that project, it is handed every rule first, along with two habits: look for real references before inventing UI, and show a preview before a new look. When Claude changes UI files without a preview you approved in the session, the reply says so:
Changed SettingsView.swift without a preview you approved
Approvals count too. "Looks right" or picking variant "A" after a preview keeps that look as a rule, so later changes don't quietly undo it.

/grudge lists the project's rules, numbered./grudge forget 2 drops one; /grudge add <rule> writes one yourself./grudge off pauses it for the session, /grudge on resumes it.PATH, to copy a screenshot out of the session's transcript.In Claude Code:
/plugin marketplace add hacksurvivor/claude-mods
/plugin install grudge@hacksurvivor
/reload-plugins
bin/shot.py with Python when you reject a look with a screenshot. It reads this session's transcript in ~/.claude/projects and copies that message's images into ~/.claude/grudge/<project>/. Nothing else.~/.claude/grudge/.See PRIVACY.md.
Apache-2.0