🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@yayaluoya-claude-plugins/auto-allow-bash-plugin

Package Overview
Dependencies
Maintainers
1
Versions
18
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@yayaluoya-claude-plugins/auto-allow-bash-plugin

自动放行只读 Bash / PowerShell 命令 — 本地正则 + LLM 双重判定

latest
Source
npmnpm
Version
0.1.17
Version published
Maintainers
1
Created
Source

auto-allow-bash-plugin

自动放行只读 Bash / PowerShell 命令的 Claude Code 插件。

工作原理

通过 PreToolUse hook 拦截所有 BashPowerShell 工具调用。

进入判定前先做防御性校验:只有 hook_event_namePreToolUsetool_nameBash / PowerShell 时才参与判定,否则(事件名或工具名不符、字段缺失)直接放手(defer)交回系统,绝不对未知工具下决策。

接着按权限模式(permission mode)短路:在 bypassPermissionsautoplan 这三种本就免人工确认的模式下,做命令分类毫无意义,hook 直接放手(defer,不输出决策),交回 Claude Code 默认权限流程,既不浪费 LLM 调用,也不会误弹确认框。其余模式(default / acceptEdits / dontAsk)及未知/缺失模式一律走完整分类(fail-safe)。

需要分类时执行双重判定:

  • 本地正则快速放行 — 对显然只读的命令直接放行,零延迟,零成本。Bash 覆盖 lscatgit status|diff|lognpm ls 等;PowerShell 覆盖 Get-ChildItemGet-ContentGet-ProcessTest-PathSelect-Object/Where-Object 等只读 cmdlet。检测到 > / >> 重定向等危险特征会立即跳过本地放行。
  • LLM 兜底判定 — 正则未命中时调用 LLM 判断是否只读,默认模型 Haiku(claude-haiku-4-5-20251001),可通过配置覆盖,最多重试 3 次。只读放行,否则回退到人工确认。

非只读命令(写文件、安装包、git pushgit commitRemove-ItemSet-Content.NET 静态调用如 [System.IO.File]::Delete 等)始终需要人工确认。

PowerShell 与 Bash 各用独立规则集:PowerShell 正则大小写不敏感,且因其可调用任意 .NET(无限攻击面),本地只白名单放行已知只读 cmdlet,其余一律交给 LLM 判定。

命令

/auto-allow-bash-config

查看或修改 LLM 判定时使用的系统提示词和模型,配置写入 ~/.claude/auto-allow-bash-plugin.md 的 frontmatter:

---
model: claude-haiku-4-5-20251001
system_prompt: |
  你的自定义提示词
---

未配置时分别使用内置默认值(模型 claude-haiku-4-5-20251001)。输出控制指令(只输出 allow/ask)由插件内部强制追加,不需要写进 system_prompt

前置条件

认证信息按 进程环境变量 → ~/.claude/settings.jsonenv 顺序读取,提供以下任一即可:

  • ANTHROPIC_AUTH_TOKEN(优先于 ANTHROPIC_API_KEY
  • ANTHROPIC_API_KEY

可选:ANTHROPIC_BASE_URL(自定义 API 网关地址)。

未配置认证时插件不会崩溃,会以"判定异常"为由回退到人工确认。

日志

每次判定追加一行到 ~/.claude/auto-allow-bash-plugin/log/<YYYY-MM-DD>.txt,格式为 时间 [事件/来源] (shell) 命令 | 详情,记录判定事件(recv/allow/ask/retry/error/skip 等,其中 skip 含权限模式短路与空命令)、判定来源(local / llm)、命令所属 shell(Bash / PowerShell)和命令内容,便于事后审计和规则调优。

安装

/plugin install auto-allow-bash-plugin@yayaluoya-claude-plugins

FAQs

Package last updated on 23 Jun 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts