project-shield 1.1.0 → 1.1.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.
package/README.md CHANGED
@@ -4,11 +4,16 @@
4
4
 
5
5
  Detects leaked API keys, PII, insecure MCP configs, and prompt injection — in one command.
6
6
 
7
+ [![npm version](https://img.shields.io/npm/v/project-shield)](https://www.npmjs.com/package/project-shield)
8
+ [![license](https://img.shields.io/npm/l/project-shield)](LICENSE)
9
+
7
10
  ```bash
8
11
  npx project-shield scan ./my-project
9
12
  ```
10
13
 
11
14
  ```
15
+ Tier: Free (0/5 scans)
16
+
12
17
  Project Shield v1.0.0
13
18
  Ruleset: v1.0.0 (SHA-256: f408a4fd...)
14
19
  Scanning: 47 files (3 excluded)
@@ -33,7 +38,7 @@ Scanning: 47 files (3 excluded)
33
38
 
34
39
  ━━━ Injection ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
35
40
  CRITICAL prompts/system.txt:3
36
- Hidden injection in comment (Direct instruction override attempt) [structural]
41
+ Hidden injection in comment [structural]
37
42
  Pattern: inj_ignore_prev | Layers: keyword ✓ structure ✓
38
43
 
39
44
  ━━━ Score ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
@@ -92,10 +97,10 @@ project-shield scan ./my-project --format json
92
97
  project-shield scan ./my-project --fix
93
98
 
94
99
  # Pro: all guides with code examples + references
95
- project-shield scan ./my-project --fix --pro
100
+ project-shield scan ./my-project --fix
96
101
  ```
97
102
 
98
- ### Evidence pack (JSON + PDF)
103
+ ### Evidence pack (Pro — JSON + PDF)
99
104
 
100
105
  ```bash
101
106
  project-shield scan ./my-project --evidence ./report
@@ -108,8 +113,8 @@ project-shield scan ./my-project --evidence ./report
108
113
  # Free badge (with watermark)
109
114
  project-shield scan ./my-project --badge shield-badge.svg
110
115
 
111
- # Pro badge (no watermark)
112
- project-shield scan ./my-project --badge shield-badge.svg --pro
116
+ # Pro badge (no watermark, with UUID + verify URL)
117
+ project-shield scan ./my-project --badge shield-badge.svg
113
118
  ```
114
119
 
115
120
  ### Custom ignore
@@ -126,13 +131,41 @@ project-shield scan <path>
126
131
  -i, --ignore <path> Path to .shieldignore file
127
132
  -r, --ruleset <path> Path to custom ruleset JSON
128
133
  -b, --badge <path> Output path for SVG badge
129
- --pro Pro mode (no watermark, full fix-it guides)
130
134
  --fix Show fix-it remediation guides
131
135
  --evidence <path> Output path for evidence pack (JSON + PDF)
132
136
  ```
133
137
 
134
138
  ---
135
139
 
140
+ ## Free vs Pro
141
+
142
+ | Feature | Free | Pro |
143
+ |---------|------|-----|
144
+ | Scans per month | 5 | 50 |
145
+ | Secrets / MCP / Injection details | Full | Full |
146
+ | PII details | Count only | File:line details |
147
+ | Fix-it guides | Top 3, summary | All, with code + references |
148
+ | Badge | Watermark | Clean + UUID + verify URL |
149
+ | Evidence Pack | Blocked | JSON + PDF |
150
+ | Seal UUID | No | Yes |
151
+
152
+ ### License Management
153
+
154
+ ```bash
155
+ # Check current status
156
+ project-shield status
157
+
158
+ # Activate Pro license
159
+ project-shield activate PSH-XXXX-XXXX-XXXX-XXXX
160
+
161
+ # Deactivate license
162
+ project-shield deactivate
163
+ ```
164
+
165
+ **License validation**: Server-validated with 7-day local cache. If the server is unreachable, a 3-day grace period keeps Pro active. After that, it gracefully downgrades to Free.
166
+
167
+ ---
168
+
136
169
  ## What It Detects
137
170
 
138
171
  ### F001: Secrets (3-layer detection)
@@ -227,7 +260,7 @@ docs/examples/
227
260
 
228
261
  ## Evidence Pack
229
262
 
230
- The `--evidence` flag generates a compliance-ready report:
263
+ The `--evidence` flag generates a compliance-ready report (Pro only):
231
264
 
232
265
  **JSON** (`report.json`):
233
266
  - Full findings (secrets, PII, MCP, injection)
@@ -289,6 +322,14 @@ src/
289
322
  badge.ts SVG badge generator (shields.io style)
290
323
  fixit.ts 10-type fix-it guide system
291
324
  evidence.ts Evidence pack (JSON + PDF)
325
+ license/
326
+ types.ts License type definitions
327
+ storage.ts Local file I/O (~/.project-shield/)
328
+ http.ts HTTPS request wrapper
329
+ validator.ts Key validation + 7-day cache + 3-day grace
330
+ usage.ts Scan usage tracking (monthly)
331
+ gate.ts Feature gating (Free/Pro)
332
+ commands.ts activate / deactivate / status
292
333
  rules/
293
334
  v1.0.0.json Ruleset (secrets + PII + MCP + injection patterns)
294
335
  ```
@@ -367,10 +408,10 @@ project-shield scan ./my-project
367
408
  project-shield scan ./my-project --fix
368
409
 
369
410
  # Pro: 전체 가이드 + 코드 예제 + 참조
370
- project-shield scan ./my-project --fix --pro
411
+ project-shield scan ./my-project --fix
371
412
  ```
372
413
 
373
- ### Evidence Pack (JSON + PDF)
414
+ ### Evidence Pack (Pro 전용 — JSON + PDF)
374
415
 
375
416
  ```bash
376
417
  project-shield scan ./my-project --evidence ./report
@@ -385,6 +426,35 @@ project-shield scan ./my-project --badge shield-badge.svg
385
426
 
386
427
  ---
387
428
 
429
+ ## Free vs Pro
430
+
431
+ | 기능 | Free | Pro |
432
+ |------|------|-----|
433
+ | 월간 스캔 | 5회 | 50회 |
434
+ | 시크릿 / MCP / 인젝션 상세 | 전체 표시 | 전체 표시 |
435
+ | PII 상세 | 건수만 표시 | 파일:라인 상세 |
436
+ | Fix-it 가이드 | 상위 3개, 요약만 | 전체, 코드 + 참조 포함 |
437
+ | 뱃지 | 워터마크 | 클린 + UUID + 검증 URL |
438
+ | Evidence Pack | 차단 | JSON + PDF 생성 |
439
+ | Seal UUID | 미포함 | 포함 |
440
+
441
+ ### 라이선스 관리
442
+
443
+ ```bash
444
+ # 현재 상태 확인
445
+ project-shield status
446
+
447
+ # Pro 라이선스 활성화
448
+ project-shield activate PSH-XXXX-XXXX-XXXX-XXXX
449
+
450
+ # 라이선스 비활성화
451
+ project-shield deactivate
452
+ ```
453
+
454
+ **라이선스 검증**: 서버 검증 후 7일간 로컬 캐시. 서버 불통 시 3일 유예 기간. 유예 이후 Free로 자동 다운그레이드.
455
+
456
+ ---
457
+
388
458
  ## 탐지 항목
389
459
 
390
460
  ### F001: 시크릿(Secret) 탐지
@@ -435,6 +505,14 @@ tests/fixtures/
435
505
 
436
506
  ---
437
507
 
508
+ ## 무결성
509
+
510
+ - 룰셋은 매 로드마다 SHA-256 검증. 변조된 룰셋 = 스캔 거부.
511
+ - 스캔 결과는 해시 봉인. 동일 입력 = 동일 해시.
512
+ - Fail-safe: 스캔 중 크래시 = `SCAN_FAILED` (거짓 통과 없음).
513
+
514
+ ---
515
+
438
516
  ## 라이선스
439
517
 
440
518
  MIT
@@ -43,7 +43,7 @@ const validator_js_1 = require("./validator.js");
43
43
  const storage_js_1 = require("./storage.js");
44
44
  const usage_js_1 = require("./usage.js");
45
45
  const http_js_1 = require("./http.js");
46
- const API_BASE = 'https://license.project-shield.dev/api/v1';
46
+ const API_BASE = 'https://project-shield-license-api.vnddns999.workers.dev/api/v1';
47
47
  const colors = {
48
48
  red: (s) => `\x1b[31m${s}\x1b[0m`,
49
49
  green: (s) => `\x1b[32m${s}\x1b[0m`,
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/license/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/license/commands.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ exports.validateLicense = validateLicense;
8
8
  const storage_js_1 = require("./storage.js");
9
9
  const usage_js_1 = require("./usage.js");
10
10
  const http_js_1 = require("./http.js");
11
- const API_BASE = 'https://license.project-shield.dev/api/v1';
11
+ const API_BASE = 'https://project-shield-license-api.vnddns999.workers.dev/api/v1';
12
12
  const KEY_PATTERN = /^PSH-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}$/;
13
13
  const CACHE_DAYS = 7;
14
14
  const GRACE_DAYS = 3;
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/license/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/license/validator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "project-shield",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "Security scanner for AI coders and MCP users — detects API keys, secrets, and PII",
5
5
  "main": "dist/index.js",
6
6
  "bin": {