goodvibesonly-cc 0.3.0 → 0.3.2

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.
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "goodvibesonly",
3
+ "version": "0.3.0",
4
+ "description": "Security scanner for vibe-coded projects. Automatically scans for hardcoded secrets, SQL injection, XSS, and other vulnerabilities before commits.",
5
+ "author": {
6
+ "name": "jddoesdev",
7
+ "url": "https://github.com/jddoesdev"
8
+ },
9
+ "homepage": "https://github.com/jddoesdev/goodvibesonly",
10
+ "repository": "https://github.com/jddoesdev/goodvibesonly",
11
+ "license": "MIT",
12
+ "keywords": [
13
+ "security",
14
+ "scanner",
15
+ "vibe-coding",
16
+ "secrets",
17
+ "vulnerabilities",
18
+ "sql-injection",
19
+ "xss",
20
+ "claude-code"
21
+ ],
22
+ "commands": "./commands",
23
+ "skills": "./skills",
24
+ "hooks": "./hooks/hooks.json"
25
+ }
package/README.md CHANGED
@@ -1,33 +1,35 @@
1
1
  ```
2
2
  ╔═════════════════════════════════════════════════════════════════╗
3
3
  ║ ║
4
- ░██████╗░██╗░░░██╗░█████╗░
5
- ██╔════╝░██║░░░██║██╔══██╗
6
- ██║░░██╗░╚██╗░██╔╝██║░░██║
7
- ██║░░╚██╗░╚████╔╝░██║░░██║
8
- ╚██████╔╝░░╚██╔╝░░╚█████╔╝
9
- ░╚═════╝░░░░╚═╝░░░░╚════╝░
4
+ ░██████╗░██╗░░░██╗░█████╗░
5
+ ██╔════╝░██║░░░██║██╔══██╗
6
+ ██║░░██╗░╚██╗░██╔╝██║░░██║
7
+ ██║░░╚██╗░╚████╔╝░██║░░██║
8
+ ╚██████╔╝░░╚██╔╝░░╚█████╔╝
9
+ ░╚═════╝░░░░╚═╝░░░░╚════╝░
10
10
  ║ ║
11
- ║ 🛡️ security scanner for vibe coders 🛡️
11
+ ║ 🛡️ security scanner for vibe coders 🛡️
12
12
  ║ ║
13
13
  ╚═════════════════════════════════════════════════════════════════╝
14
14
  ```
15
15
 
16
16
  # GoodVibesOnly
17
17
 
18
- **Security scanner for vibe-coded projects.** A Claude Code extension that automatically scans for vulnerabilities before you commit.
18
+ **Security scanner for vibe-coded projects.** A Claude Code extension that automatically scans for vulnerabilities when Claude Code commits on your behalf.
19
19
 
20
20
  ## How It Works
21
21
 
22
- GoodVibesOnly uses Claude Code's hooks system to intercept git commands:
22
+ GoodVibesOnly uses Claude Code's [hooks system](https://docs.anthropic.com/en/docs/claude-code/hooks) to intercept git commands **within Claude Code sessions**. It does not hook into git directly — it only triggers when Claude Code itself runs a Bash command.
23
23
 
24
- 1. **Hooks into git commit/push** - Automatically runs before any `git commit` or `git push`
25
- 2. **Scans changed files** - Checks for hardcoded secrets, injection vulnerabilities, XSS, and more
26
- 3. **Blocks on critical issues** - Prevents commits with critical vulnerabilities (exit code 2)
24
+ 1. **Intercepts Claude Code's Bash calls** - A `PreToolUse` hook runs the scanner whenever Claude Code is about to execute a Bash command
25
+ 2. **Checks for git commit/push** - If the command is a `git commit` or `git push`, it scans staged files for hardcoded secrets, injection vulnerabilities, XSS, and more
26
+ 3. **Blocks on critical issues** - Prevents Claude Code from executing the commit by exiting with code 2
27
27
  4. **Allows warnings through** - High/medium issues are reported but don't block
28
28
 
29
+ > **Note:** This only works when committing through Claude Code. Running `git commit` directly in your terminal will not trigger the scan. For terminal-level git hooks, consider a traditional pre-commit hook tool.
30
+
29
31
  ```
30
- You: git commit -m "add user api"
32
+ You (in Claude Code): commit my changes
31
33
 
32
34
  🛡️ GoodVibesOnly Security Scan
33
35
 
@@ -42,27 +44,39 @@ You: git commit -m "add user api"
42
44
  db.query("SELECT * FROM users WHERE id = " + id)
43
45
 
44
46
  Found 2 critical, 0 high, 0 medium issues.
45
- Commit blocked. Fix critical issues or use --no-verify to bypass.
47
+ Commit blocked fix critical issues before committing.
46
48
  ```
47
49
 
48
50
  ## Installation
49
51
 
50
- ### Option 1: npx (recommended)
52
+ ### Option 1: skills.sh (recommended)
53
+
54
+ ```bash
55
+ npx skills add jddoesdev/goodvibesonly
56
+ ```
57
+
58
+ Or install globally:
59
+
60
+ ```bash
61
+ npx skills add jddoesdev/goodvibesonly --global
62
+ ```
63
+
64
+ ### Option 2: npx
51
65
 
52
66
  ```bash
53
67
  npx goodvibesonly-cc
54
68
  ```
55
69
 
56
- ### Option 2: npm global install
70
+ ### Option 3: npm global install
57
71
 
58
72
  ```bash
59
73
  npm install -g goodvibesonly-cc
60
74
  ```
61
75
 
62
- ### Option 3: Manual
76
+ ### Option 4: Manual
63
77
 
64
78
  ```bash
65
- git clone https://github.com/YOURNAME/goodvibesonly.git
79
+ git clone https://github.com/jddoesdev/goodvibesonly.git
66
80
  cd goodvibesonly
67
81
  node bin/install.js --global
68
82
  ```
@@ -80,11 +94,11 @@ node bin/install.js --uninstall # Remove GoodVibesOnly
80
94
 
81
95
  ### Automatic (via hooks)
82
96
 
83
- Just use git normally. GoodVibesOnly runs automatically:
97
+ When working inside Claude Code, GoodVibesOnly runs automatically whenever Claude executes a git commit or push:
84
98
 
85
- ```bash
86
- git commit -m "message" # Scans before commit
87
- git push # Scans before push
99
+ ```
100
+ You: commit my changes # Scans before Claude runs git commit
101
+ You: push to origin # Scans before Claude runs git push
88
102
  ```
89
103
 
90
104
  ### Manual Scan
@@ -148,21 +162,23 @@ goodvibesonly/
148
162
 
149
163
  ## How It's Different
150
164
 
151
- - **Actually enforces** - Uses Claude Code hooks to block commits, not just advisory
165
+ - **Actually enforces** - Uses Claude Code's PreToolUse hooks to block commits, not just advisory
152
166
  - **Real scanning** - Node.js script with regex patterns, not just instructions for Claude
153
- - **Zero config** - Installs hooks automatically
167
+ - **Zero config** - Installs hooks automatically into Claude Code's settings
154
168
  - **Uninstall support** - Clean removal with `--uninstall`
155
169
 
156
170
  ## Technical Details
157
171
 
158
- GoodVibesOnly installs a `PreToolUse` hook that intercepts Bash commands. When it detects `git commit` or `git push`:
172
+ GoodVibesOnly installs a `PreToolUse` hook in Claude Code's settings. This hook runs before every Bash tool call that Claude Code makes. When the scanner detects the command is a `git commit` or `git push`:
159
173
 
160
174
  1. Reads staged files via `git diff --cached --name-only`
161
175
  2. Scans each file against vulnerability patterns
162
176
  3. Outputs findings to stderr
163
- 4. Exits with code 2 to block (critical issues) or 0 to allow
177
+ 4. Exits with code 2 to block Claude Code from running the command (critical issues) or 0 to allow it
178
+
179
+ For non-git commands, the scanner exits immediately with code 0 (allow).
164
180
 
165
- The hook is configured in `~/.claude/settings.json`:
181
+ The hook is configured in Claude Code's `settings.json`:
166
182
 
167
183
  ```json
168
184
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "goodvibesonly-cc",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Security scanner for vibe-coded projects - Claude Code extension",
5
5
  "type": "module",
6
6
  "bin": {
@@ -21,7 +21,7 @@
21
21
  "license": "MIT",
22
22
  "repository": {
23
23
  "type": "git",
24
- "url": "https://github.com/jddoesdev/vibecheck.git"
24
+ "url": "https://github.com/jddoesdev/goodvibesonly.git"
25
25
  },
26
26
  "engines": {
27
27
  "node": ">=18.0.0"
@@ -31,6 +31,7 @@
31
31
  "commands/",
32
32
  "skills/",
33
33
  "hooks/",
34
+ ".claude-plugin/",
34
35
  "README.md",
35
36
  "LICENSE"
36
37
  ]