@bcdflow/dev-inspector 2.0.0 → 2.0.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.
Files changed (2) hide show
  1. package/README.md +192 -0
  2. package/package.json +11 -2
package/README.md ADDED
@@ -0,0 +1,192 @@
1
+ # @bcdflow/dev-inspector
2
+
3
+ AI 코딩 어시스턴트(Claude Code)와 연동하여 웹 페이지를 실시간으로 검사, 어노테이션, 감사할 수 있는 Express 미들웨어입니다.
4
+
5
+ ```
6
+ Claude Code → MCP Server (stdio) → Express API (SSE+REST) → Client JS (in-page) → DOM
7
+ ```
8
+
9
+ ## Quick Start
10
+
11
+ ### 1. 설치
12
+
13
+ ```bash
14
+ npm install -D @bcdflow/dev-inspector
15
+ ```
16
+
17
+ ### 2. Express 앱에 미들웨어 추가
18
+
19
+ ```javascript
20
+ const { devInspector } = require('@bcdflow/dev-inspector');
21
+
22
+ // 개발 환경에서만 활성화 (production에서 자동 비활성)
23
+ app.use(devInspector({ autoInject: true }));
24
+ ```
25
+
26
+ ### 3. MCP 서버 등록 (Claude Code 연동)
27
+
28
+ ```bash
29
+ npx dev-inspector setup
30
+ ```
31
+
32
+ ### 4. 사용
33
+
34
+ - 서버 시작 후 브라우저에서 페이지 열기
35
+ - 우하단 돋보기 버튼 클릭 또는 `Ctrl+Shift+X`로 인스펙터 토글
36
+ - Claude Code에서 MCP 도구로 DOM 검사, 어노테이션, 접근성 감사 등 사용
37
+
38
+ ---
39
+
40
+ ## License Key (Pro)
41
+
42
+ Free tier는 11개 기본 도구를 제공합니다. Pro 라이선스를 활성화하면 34개 전체 도구를 사용할 수 있습니다.
43
+
44
+ ### 활성화 방법
45
+
46
+ **방법 1: CLI로 활성화** (권장)
47
+
48
+ ```bash
49
+ npx dev-inspector activate DI-XXXX-XXXX-XXXX
50
+ ```
51
+
52
+ 키가 `~/.dev-inspector/config.json`에 저장되어 모든 프로젝트에서 자동 적용됩니다.
53
+
54
+ **방법 2: 환경변수**
55
+
56
+ ```bash
57
+ # .env
58
+ DEV_INSPECTOR_KEY=DI-XXXX-XXXX-XXXX
59
+ ```
60
+
61
+ **방법 3: 미들웨어 옵션**
62
+
63
+ ```javascript
64
+ app.use(devInspector({
65
+ licenseKey: process.env.DEV_INSPECTOR_KEY,
66
+ autoInject: true,
67
+ }));
68
+ ```
69
+
70
+ ### 상태 확인
71
+
72
+ ```bash
73
+ npx dev-inspector status
74
+ ```
75
+
76
+ ### Free vs Pro
77
+
78
+ | 기능 | Free | Pro |
79
+ |------|:----:|:---:|
80
+ | DOM 검사 (`inspect_element`) | O | O |
81
+ | 요소 선택/하이라이트 (`select_element`) | O | O |
82
+ | 어노테이션 관리 (acknowledge, resolve, dismiss, reply) | O | O |
83
+ | 버그 컨텍스트 (`get_bug_context`) | O | O |
84
+ | 텍스트 어노테이션 (`annotate_text`) | - | O |
85
+ | 애니메이션 제어 (`pause_animations`) | - | O |
86
+ | React 컴포넌트 검사 (`inspect_component`, `find_components`) | - | O |
87
+ | 스크린샷 캡처 (`capture_page`, `capture_labeled`) | - | O |
88
+ | 접근성 감사 (`audit_accessibility`, `check_contrast`) | - | O |
89
+ | CSS 규칙 검사 (`inspect_css_rules`) | - | O |
90
+ | 디자인 토큰 추출 (`extract_design_tokens`) | - | O |
91
+ | React 상태 검사 (`inspect_react_state`) | - | O |
92
+ | 페이지 구조 검증 (`validate_page_structure`) | - | O |
93
+ | Tailwind 매핑 (`map_to_tailwind`) | - | O |
94
+ | 성능 메트릭 (`get_performance_metrics`) | - | O |
95
+ | 테스트 코드 생성 (`generate_test_code`) | - | O |
96
+ | 탭 순서 검사 (`inspect_tab_order`) | - | O |
97
+ | 에셋 목록 (`list_assets`) | - | O |
98
+ | 버그 리포트 내보내기 (`export_bug_report`) | - | O |
99
+
100
+ ---
101
+
102
+ ## 미들웨어 옵션
103
+
104
+ ```javascript
105
+ app.use(devInspector({
106
+ // 라이선스 키 (없으면 DEV_INSPECTOR_KEY 환경변수 또는 ~/.dev-inspector/config.json)
107
+ licenseKey: 'DI-XXXX-XXXX-XXXX',
108
+
109
+ // API 라우트 접두사 (기본: '/api/v1/dev-inspector')
110
+ prefix: '/api/v1/dev-inspector',
111
+
112
+ // production에서도 활성화 (기본: false — production에서 자동 비활성)
113
+ enabled: false,
114
+
115
+ // HTML 응답에 클라이언트 스크립트 자동 주입 (기본: false)
116
+ autoInject: true,
117
+ }));
118
+ ```
119
+
120
+ ### autoInject 없이 수동으로 스크립트 추가
121
+
122
+ ```html
123
+ <script src="/api/v1/dev-inspector/client.js" defer></script>
124
+ ```
125
+
126
+ ---
127
+
128
+ ## CLI 명령어
129
+
130
+ ```bash
131
+ npx dev-inspector setup # Claude Code MCP 서버 등록
132
+ npx dev-inspector setup --global # 전역 등록 (모든 프로젝트)
133
+ npx dev-inspector activate <key> # Pro 라이선스 활성화
134
+ npx dev-inspector status # 라이선스 상태 확인
135
+ npx dev-inspector mcp # MCP 서버 직접 실행 (디버그)
136
+ ```
137
+
138
+ ---
139
+
140
+ ## API 엔드포인트
141
+
142
+ 미들웨어가 자동으로 마운트하는 엔드포인트:
143
+
144
+ | Method | Path | 설명 |
145
+ |--------|------|------|
146
+ | GET | `{prefix}/stream` | SSE 스트림 (브라우저 연결) |
147
+ | POST | `{prefix}/call` | 도구 호출 (MCP → 브라우저) |
148
+ | POST | `{prefix}/result` | 도구 결과 (브라우저 → MCP) |
149
+ | GET | `{prefix}/tools` | 사용 가능한 도구 목록 |
150
+ | GET | `{prefix}/license-status` | 라이선스 상태 |
151
+ | GET | `{prefix}/status` | 연결 상태 |
152
+ | GET | `{prefix}/client.js` | 클라이언트 번들 |
153
+
154
+ ---
155
+
156
+ ## 스크린샷 기능
157
+
158
+ 스크린샷 도구(`capture_page`, `capture_labeled`)를 사용하려면 html2canvas가 필요합니다:
159
+
160
+ ```html
161
+ <script src="https://cdn.jsdelivr.net/npm/html2canvas@1.4.1/dist/html2canvas.min.js"></script>
162
+ ```
163
+
164
+ ---
165
+
166
+ ## 아키텍처
167
+
168
+ ```
169
+ ┌─────────────┐ stdio ┌─────────────┐ HTTP ┌─────────────────┐
170
+ │ Claude Code │ ──────────────→ │ MCP Server │ ────────────→ │ Express 미들웨어 │
171
+ │ │ ←────────────── │ (server.js) │ ←──────────── │ (SSE + REST) │
172
+ └─────────────┘ JSON-RPC └─────────────┘ POST/GET └────────┬────────┘
173
+ │ SSE
174
+
175
+ ┌───────────────┐
176
+ │ Client JS │
177
+ │ (브라우저 내) │
178
+ │ → DOM 접근 │
179
+ └───────────────┘
180
+ ```
181
+
182
+ ---
183
+
184
+ ## 요구 사항
185
+
186
+ - Node.js >= 16
187
+ - Express >= 4.0
188
+ - Claude Code (MCP 연동 시)
189
+
190
+ ## License
191
+
192
+ MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bcdflow/dev-inspector",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "DOM inspector + MCP bridge for AI coding assistants. Express middleware that enables Claude Code to inspect, annotate, and audit web pages in real-time.",
5
5
  "main": "dist/middleware/index.js",
6
6
  "bin": {
@@ -17,7 +17,15 @@
17
17
  "clean": "rm -rf dist",
18
18
  "prepublishOnly": "npm run build"
19
19
  },
20
- "keywords": ["mcp", "dom-inspector", "claude", "ai", "express-middleware", "accessibility", "devtools"],
20
+ "keywords": [
21
+ "mcp",
22
+ "dom-inspector",
23
+ "claude",
24
+ "ai",
25
+ "express-middleware",
26
+ "accessibility",
27
+ "devtools"
28
+ ],
21
29
  "license": "MIT",
22
30
  "peerDependencies": {
23
31
  "express": ">=4.0.0"
@@ -28,6 +36,7 @@
28
36
  }
29
37
  },
30
38
  "devDependencies": {
39
+ "@bcdflow/dev-inspector": "^2.0.0",
31
40
  "esbuild": "^0.24.0",
32
41
  "typescript": "^5.7.0"
33
42
  },