ai-install-guard 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +8 -0
- package/README.md +37 -1
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
{
|
|
11
11
|
"name": "ai-install-guard",
|
|
12
12
|
"source": "./",
|
|
13
|
-
"version": "0.3.
|
|
13
|
+
"version": "0.3.1",
|
|
14
14
|
"description": "Scans plugins, mods, skills and MCP servers without running them, shows a PASS / WARN / FAIL verdict, and installs nothing until you approve.",
|
|
15
15
|
"category": "security",
|
|
16
16
|
"keywords": [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-install-guard",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "A pre-install security gate for Claude Code: scans plugins, mods, skills and MCP servers without running them, and installs nothing until you approve.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Boaz Ziniman",
|
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,14 @@ All notable changes to ai-install-guard. Ordered newest to oldest.
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## v0.3.1 · 2026-10-23
|
|
8
|
+
|
|
9
|
+
**`README`** - An Uninstall section, linked from the top: how to remove or pause the guard in Claude Code or from a terminal, how to turn it off from outside Claude Code if it ever holds something it should not, how to clear your decisions before you go, and that the guard never holds an uninstall or a disable
|
|
10
|
+
|
|
11
|
+
**`ci`** - The workflows use the current Node 24 releases of checkout, setup-node and upload-artifact, pinned to their commits, instead of Node 20 ones the runners now force onto Node 24, and npm no longer warns about the `always-auth` setting the old setup-node wrote
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
7
15
|
## v0.3.0 · 2026-10-23
|
|
8
16
|
|
|
9
17
|
**`/plugin install`** - The guard now holds installs. `/plugin install <name>@<marketplace>` and `/plugin marketplace add <source>` are looked up (the repository, folder and commit Claude Code would install from), scanned at that commit and answered in the command's place, so nothing installs until you press Install in the pane. Install records your approval for that commit and tree hash, looks the plugin up once more, and runs your command again; a commit that moved since the scan is not installed. A version you already approved installs without asking again unless a new scan judges it worse, a rejected one stays refused, and what the guard cannot pin (an npm package, a plugin no marketplace lists, a name two marketplaces share) is Could not verify, with Install anyway behind a second confirmation that lets that one command through once. The `/plugin` menu itself is not gated yet, and says so when it opens
|
package/README.md
CHANGED
|
@@ -16,6 +16,8 @@
|
|
|
16
16
|
/plugin install ai-install-guard --marketplace ziniman/ai-install-guard
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
+
To turn it off or remove it, see [Uninstall](#uninstall).
|
|
20
|
+
|
|
19
21
|
</div>
|
|
20
22
|
|
|
21
23
|
> **Status: early development.** `/plugin install` and `/plugin marketplace add`, and the same installs when Claude runs `claude plugin` itself, are held until you approve the exact version the guard scanned. `/guard scan` checks a folder or a repository before you install it anywhere. The other gates are being built in stages; see [Where it steps in](#where-it-steps-in) and [Roadmap](#roadmap).
|
|
@@ -28,7 +30,7 @@ AI Install Guard is a Claude Code mod that stops every new plugin, mod, skill, M
|
|
|
28
30
|
|
|
29
31
|
You, before you add something to Claude Code. It runs inside your own session, needs no account, server or agent, and is open source, so you can read every check it makes. It reaches the network only to fetch the candidate from where it lives and to read that repository's public details; any outside lookup stays optional and off by default.
|
|
30
32
|
|
|
31
|
-
Company security platforms
|
|
33
|
+
Company-wide security platforms watch a whole fleet of agents and enforce policy across it. The guard does not replace them: it is an open, local check for one developer's installs, and it works the same whether or not your company runs one.
|
|
32
34
|
|
|
33
35
|
## How it works
|
|
34
36
|
|
|
@@ -160,6 +162,40 @@ claude plugin configure ai-install-guard
|
|
|
160
162
|
|
|
161
163
|
A lookup that fails or hits a rate limit is noted in the report and never fails the scan.
|
|
162
164
|
|
|
165
|
+
## Uninstall
|
|
166
|
+
|
|
167
|
+
The guard holds installs, never removals: uninstalling or disabling it, or any other plugin, goes straight through when the command says so plainly. One whose action is only known as it runs, such as `claude plugin "$ACTION" …`, is held, since it could as well be an install.
|
|
168
|
+
|
|
169
|
+
**Remove it** in Claude Code:
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
/plugin uninstall ai-install-guard@ai-install-guard
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
or from a terminal:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
claude plugin uninstall ai-install-guard@ai-install-guard
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
If you installed it for one project only (`--scope project` or `--scope local`), add the same `--scope`. To remove its marketplace as well, run `/plugin marketplace remove ai-install-guard`. A session that is already open may keep the guard loaded until you restart it.
|
|
182
|
+
|
|
183
|
+
**Turn it off for a while** with `/plugin disable ai-install-guard@ai-install-guard`, and back on with `/plugin enable ai-install-guard@ai-install-guard`.
|
|
184
|
+
|
|
185
|
+
**If it ever gets in your way.** The guard fails closed: when it cannot check something, it stops it. So a bug in the guard could hold an install, or a shell command it mistakes for one, that should have gone through. You can always turn it off from a terminal outside Claude Code, where the guard sees nothing:
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
claude plugin disable ai-install-guard@ai-install-guard
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
If even that fails, set `"ai-install-guard@ai-install-guard": false` under `enabledPlugins` in `~/.claude/settings.json` (or in the project's `.claude/settings.json` if you installed it there). Then [open an issue](https://github.com/ziniman/ai-install-guard/issues) with the command it stopped, so it can be fixed.
|
|
192
|
+
|
|
193
|
+
**Your decisions.** Approvals and rejections are kept in the store Claude Code gives the plugin, which can outlast an uninstall, so a later reinstall may find them again. To start clean, run `/guard list` before you uninstall and `/guard forget <name>` for each one. The guard writes no files of its own: its only folder is the temporary one it fetches into, removed after each scan.
|
|
194
|
+
|
|
195
|
+
**If your organization installed it** through managed settings, it is theirs to remove; ask whoever manages your Claude Code settings.
|
|
196
|
+
|
|
197
|
+
**In Claude chat,** remove the skill under **Settings > Capabilities > Skills**.
|
|
198
|
+
|
|
163
199
|
## What it is not
|
|
164
200
|
|
|
165
201
|
- **Not a proof of safety.** Static analysis raises the bar and makes every capability visible; a determined attacker can still evade it.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-install-guard",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "A pre-install security gate for Claude Code: scans plugins, mods, skills and MCP servers without running them, and installs nothing until you approve.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build:fixtures": "node scripts/build-fixtures.js",
|