visual-remote 0.1.2 → 0.2.0
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 +47 -53
- package/apps/cli/dist/index.js +262 -75
- package/apps/cli/dist/vite.js +5007 -0
- package/apps/cli/vite.d.ts +11 -0
- package/package.json +22 -4
package/README.md
CHANGED
|
@@ -18,24 +18,40 @@ Node.js와 pnpm 버전은 각각 `.nvmrc`와 `package.json`에 고정되어 있
|
|
|
18
18
|
|
|
19
19
|
## 가장 빠른 사용
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
Vite 앱의 `package.json`과 `vite.config`가 있는 폴더에서 한 번만 초기화합니다.
|
|
22
22
|
|
|
23
23
|
```bash
|
|
24
|
-
npx --yes visual-remote@latest
|
|
24
|
+
npx --yes visual-remote@latest init
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
`init`은 다음 작업을 수행합니다.
|
|
28
|
+
|
|
29
|
+
- 현재 프로젝트에 `visual-remote`를 개발 의존성으로 설치합니다.
|
|
30
|
+
- `vite.config`의 플러그인 배열에 `visualRemote()`를 추가합니다.
|
|
31
|
+
- 현재 폴더에 `.visualdev/config.yaml`을 생성합니다.
|
|
30
32
|
|
|
31
|
-
|
|
33
|
+
이후에는 앱을 평소처럼 실행합니다.
|
|
32
34
|
|
|
33
35
|
```bash
|
|
34
|
-
npm
|
|
35
|
-
|
|
36
|
+
npm run dev
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
브라우저에서는 앱의 원래 주소를 그대로 엽니다. 앱이 `localhost:9011`에서
|
|
40
|
+
실행된다면 Visual Remote도 `http://localhost:9011`에서 표시됩니다. 내부 Bridge는
|
|
41
|
+
`10001`부터 빈 포트를 사용하지만 사용자가 그 포트로 접속할 필요는 없습니다.
|
|
42
|
+
|
|
43
|
+
```text
|
|
44
|
+
http://localhost:9011/api/* → 기존 앱이 그대로 처리
|
|
45
|
+
http://localhost:9011/@vite/* → 기존 Vite/HMR이 그대로 처리
|
|
46
|
+
http://localhost:9011/_visual/* → 내부 Visual Remote Bridge로만 전달
|
|
36
47
|
```
|
|
37
48
|
|
|
38
|
-
|
|
49
|
+
이미 실행 중이던 개발 서버가 있다면 `init` 후 한 번 재시작해야 변경된 Vite 설정이
|
|
50
|
+
적용됩니다. Portr를 사용할 때도 내부 Bridge 포트가 아니라 기존 앱 포트만 노출합니다.
|
|
51
|
+
|
|
52
|
+
현재 자동 통합은 Vite 프로젝트를 지원합니다.
|
|
53
|
+
|
|
54
|
+
## 저장소에서 개발
|
|
39
55
|
|
|
40
56
|
저장소를 받은 뒤 NVM을 불러오고 고정된 Node.js 버전을 선택합니다.
|
|
41
57
|
|
|
@@ -61,8 +77,7 @@ corepack pnpm build
|
|
|
61
77
|
node apps/cli/dist/index.js doctor
|
|
62
78
|
```
|
|
63
79
|
|
|
64
|
-
`doctor`에서 Git 작업
|
|
65
|
-
않았다면 attach 기본값을 사용할 수 있다는 경고가 표시됩니다.
|
|
80
|
+
`doctor`에서 Git 작업 트리, 현재 프로젝트 설정과 Codex 실행 환경을 확인합니다.
|
|
66
81
|
|
|
67
82
|
## 자동화 셸에서 Node.js 24 사용
|
|
68
83
|
|
|
@@ -80,37 +95,11 @@ corepack pnpm test
|
|
|
80
95
|
이 저장소의 `AGENTS.md`에도 같은 절차가 기록되어 있습니다. 자동화는 설치나
|
|
81
96
|
검증 전에 반드시 `node --version`이 `v24.18.0`인지 확인해야 합니다.
|
|
82
97
|
|
|
83
|
-
##
|
|
84
|
-
|
|
85
|
-
먼저 대상 애플리케이션을 평소처럼 실행합니다. 다음 예시는 애플리케이션이
|
|
86
|
-
`localhost:9011`에서 실행 중인 경우입니다.
|
|
98
|
+
## 설정
|
|
87
99
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
브리지는 `10001`부터 빈 포트를 찾아 다음과 같은 주소를 출력합니다.
|
|
93
|
-
|
|
94
|
-
```text
|
|
95
|
-
Gateway: http://localhost:10001
|
|
96
|
-
Upstream: http://localhost:9011/
|
|
97
|
-
Open: http://localhost:10001
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
브라우저에서는 출력된 `Gateway` 또는 `Open` 주소를 엽니다. 별도의 페어링 링크나
|
|
101
|
-
토큰은 필요하지 않습니다.
|
|
102
|
-
|
|
103
|
-
Portr를 사용한다면 원래 개발 서버 포트가 아니라 브리지 Gateway 포트 `10001`을
|
|
104
|
-
노출해야 합니다. 앱 화면, 개발 서버의 HMR, 브리지 제어 채널이 한 출처를
|
|
105
|
-
사용합니다. `--public-url`에는 Portr가 발급한 공개 주소를 전달합니다. 공개 주소를
|
|
106
|
-
항상 사용한다면 `.visualdev/config.local.yaml`의 `gateway.publicUrl`로도 설정할 수
|
|
107
|
-
있습니다.
|
|
108
|
-
|
|
109
|
-
## 선택 사항: 앱 실행까지 함께 관리
|
|
110
|
-
|
|
111
|
-
대상 저장소 루트에서 `visual init`을 실행하면 패키지 매니저와 `dev` 스크립트를
|
|
112
|
-
감지해 `.visualdev/config.yaml`을 생성합니다. 기존 파일은 덮어쓰지 않습니다.
|
|
113
|
-
직접 작성할 때 명령은 셸 문자열이 아니라 인자 배열로 작성합니다.
|
|
100
|
+
`init`은 명령을 실행한 현재 프로젝트 폴더에 설정을 생성합니다. 모노레포의 하위
|
|
101
|
+
Vite 앱에서 실행하면 Git 루트가 아니라 해당 앱 폴더에 생성됩니다. 기존 설정은
|
|
102
|
+
덮어쓰지 않습니다.
|
|
114
103
|
|
|
115
104
|
```yaml
|
|
116
105
|
version: 1
|
|
@@ -167,18 +156,24 @@ paths:
|
|
|
167
156
|
- dist/**
|
|
168
157
|
```
|
|
169
158
|
|
|
170
|
-
|
|
159
|
+
Vite 플러그인이 개발 서버와 함께 내부 Bridge를 시작하고 종료합니다. `agent`,
|
|
160
|
+
`verification`, `paths` 같은 상세 설정만 YAML에서 조정하면 됩니다.
|
|
161
|
+
|
|
162
|
+
## 기존 attach 방식
|
|
163
|
+
|
|
164
|
+
다음 명령은 이전 버전과의 호환을 위해 남아 있습니다.
|
|
171
165
|
|
|
172
166
|
```bash
|
|
173
|
-
|
|
167
|
+
npx --yes visual-remote@latest http://localhost:9011
|
|
174
168
|
```
|
|
175
169
|
|
|
176
|
-
|
|
177
|
-
|
|
170
|
+
이 방식은 별도 Gateway 주소를 열어 앱 전체를 프록시하므로 Origin에 민감한 API나
|
|
171
|
+
쿠키가 있는 앱에는 권장하지 않습니다. Vite 프로젝트에서는 `init` 통합을 사용하고
|
|
172
|
+
원래 앱 주소로 접속합니다.
|
|
178
173
|
|
|
179
174
|
## 브라우저에서 변경 요청
|
|
180
175
|
|
|
181
|
-
1.
|
|
176
|
+
1. 평소 사용하는 앱 주소를 엽니다.
|
|
182
177
|
2. `Command+Shift+G` 또는 `Ctrl+Shift+G`로 오버레이를 열고 닫습니다.
|
|
183
178
|
3. 전체 작업 내역을 보려면 `작업 보드 ↗`를 눌러 별도 탭을 엽니다.
|
|
184
179
|
4. 변경을 요청하려면 요소 하나, 여러 요소, 영역 또는 페이지 전체를 선택합니다.
|
|
@@ -208,17 +203,15 @@ Overlay에서 `작업 보드 ↗`를 다시 눌러 새 세션을 엽니다. 연
|
|
|
208
203
|
현재 제공하는 명령은 다음과 같습니다.
|
|
209
204
|
|
|
210
205
|
```bash
|
|
211
|
-
npx visual-remote
|
|
212
|
-
visual init
|
|
206
|
+
npx --yes visual-remote@latest init
|
|
213
207
|
visual attach --help
|
|
214
208
|
visual dev --help
|
|
215
209
|
visual status
|
|
216
210
|
visual doctor
|
|
217
211
|
```
|
|
218
212
|
|
|
219
|
-
-
|
|
213
|
+
- `init`: 현재 Vite 앱에 개발 전용 통합을 설치합니다.
|
|
220
214
|
- `attach`: 기본 명령의 명시적 이름이며 기존 사용법과 호환됩니다.
|
|
221
|
-
- `init`: 선택적으로 앱 실행까지 관리할 때 기본 설정을 생성합니다.
|
|
222
215
|
- `dev`: `init` 설정을 사용해 앱과 브리지를 함께 실행하는 선택 명령입니다.
|
|
223
216
|
- `status`: 현재 Git 작업 트리의 브리지 실행 상태를 확인합니다.
|
|
224
217
|
- `doctor`: Git, 설정 파일, 개발 명령과 Codex 사용 가능 여부를 점검합니다.
|
|
@@ -245,6 +238,7 @@ corepack pnpm audit --prod
|
|
|
245
238
|
packages/overlay/dist/client.js
|
|
246
239
|
packages/overlay/dist/viewer.js
|
|
247
240
|
apps/cli/dist/index.js
|
|
241
|
+
apps/cli/dist/vite.js
|
|
248
242
|
```
|
|
249
243
|
|
|
250
244
|
## 저장소 구조
|
|
@@ -284,6 +278,6 @@ node --version
|
|
|
284
278
|
|
|
285
279
|
### 설정 파일 경고가 표시되는 경우
|
|
286
280
|
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
281
|
+
Vite 앱의 `package.json`과 `vite.config`가 있는 폴더에서 `visual init`을 실행한 뒤
|
|
282
|
+
`doctor`를 다시 실행합니다. 모노레포에서는 Git 루트가 아니라 실제 앱 폴더에서
|
|
283
|
+
실행합니다.
|