secret-redactor 密钥遮蔽
在模型读到之前,把密钥、邮箱和 IP 换成占位符。
> 给订单列表加上分页
⏺ 我先看看列表组件。
$ cat .env
ANTHROPIC_API_KEY=[REDACTED-SECRET-164d0c98]
SUPPORT_EMAIL=[REDACTED-EMAIL-6f096ff7]
EDGE_ORIGIN=[REDACTED-IP-6fc52d2b] · 3 hidden(示意)
后台运行,无界面。这里显示的是示意日志。
❯
示意。实际效果取决于 Mod、终端和运行环境。
安装
/plugin marketplace add ray-amjad/awesome-claude-code-function-hooks
/plugin install secret-redactor@awesome-claude-code-function-hooks
/reload-plugins在 Claude Code 会话里逐行执行这些命令。
claude plugin marketplace add ray-amjad/awesome-claude-code-function-hooks
claude plugin install secret-redactor@awesome-claude-code-function-hooks然后在会话里执行 /reload-plugins,或开一个新会话。
请帮我安装 Claude Code Mod「secret-redactor 密钥遮蔽」(https://github.com/ray-amjad/awesome-claude-code-function-hooks)。安装前先阅读仓库 README 的 Security 和 Requirements 部分,告诉我它会读写哪些内容、运行什么命令、是否联网,以及对 Claude Code 版本、系统和终端的要求。确认没有问题后,运行 claude plugin marketplace add ray-amjad/awesome-claude-code-function-hooks 和 claude plugin install secret-redactor@awesome-claude-code-function-hooks 完成安装,最后提醒我在会话里执行 /reload-plugins。把这段话发给 Claude Code,它会先读原作者说明再安装。
git clone https://github.com/ray-amjad/awesome-claude-code-function-hooks
cd awesome-claude-code-function-hooks
claude --plugin-dir ./plugins/secret-redactor克隆仓库后用 --plugin-dir 在本地会话中试用。
它会碰什么
据原作者说明,收录时核对;可用 claude plugin validate 自行检查。
读取
有读取你提交的提示、工具输入与结果,以及首条消息附带的上下文块。
写入文件
无运行命令
未说明README 未明确说明;代码中未见启动进程。
联网
未说明README 未说明;代码不自行发请求,但会改写发给模型的提示与工具结果。
介绍
secret-redactor 是 Claude Code 的 function hooks Mod,让三类值不进入会话记录:密钥、邮箱地址和 IP 地址。
- 替换而非销毁:值存进只在本会话内存中的保险库,记录里换成稳定占位符(如
[REDACTED-SECRET-164d0c98]),同一个值总是同一个占位符。 - 工具调用时还原:进入 Bash、Write 等工具前把真实值放回,工具结果再次遮蔽,命令和写文件照常可用。
- 三处拦截:你粘贴的提示、工具结果(如
cat .env)、首条消息附带的上下文。 - 识别规则:厂商格式(
sk-ant-、ghp_、AKIA、JWT、私钥等)、高熵混合大小写令牌、紧跟API_KEY=等名称的令牌;Stripe 公开 id、单词组合名和 git SHA 等不会误伤。私有 IP 默认保留。
作者说明不写磁盘,重启后保险库失效;不遮蔽模型自己写出的密钥。README 仍按早期访问说明要求设置 CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1,未写版本号,与本站 2.1.287 基线的差异需核对。
适合谁
- 担心 API 密钥、客户邮箱等进入会话记录的人
运行要求
- README 要求设置 CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1(早期访问说明)。
- 保险库只在内存中,重启会话后占位符失效。