gravity-core 1.0.4 → 1.0.6
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 +21 -21
- package/SETUP.md +3 -3
- package/dist/cli-utils.js +1 -1
- package/dist/cli-utils.js.map +1 -1
- package/dist/cli.js +4 -4
- package/dist/cli.js.map +1 -1
- package/dist/mcp-server.js +1 -1
- package/extension/background.js +185 -4
- package/extension/content.js +1 -1
- package/extension/icon128.svg +1 -1
- package/extension/icon16.svg +1 -1
- package/extension/icon48.svg +1 -1
- package/extension/manifest.json +2 -2
- package/extension/popup.html +1 -1
- package/native-host/{devtools-bridge-host.bat → gravity-host.bat} +1 -1
- package/native-host/manifest.json +2 -2
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -25,15 +25,23 @@ npm install gravity-core
|
|
|
25
25
|
### 2. Setup Extension
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
gravity setup-extension
|
|
28
|
+
npx gravity-core setup-extension
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
This extracts the Chrome extension to `~/.gravity-extension`.
|
|
32
32
|
|
|
33
|
-
### 3.
|
|
33
|
+
### 3. Load Extension in Chrome
|
|
34
|
+
|
|
35
|
+
1. Open Chrome and go to `chrome://extensions`
|
|
36
|
+
2. Enable "Developer mode" (toggle in top right)
|
|
37
|
+
3. Click "Load unpacked"
|
|
38
|
+
4. Select the `~/.gravity-extension` folder
|
|
39
|
+
5. ✅ Done!
|
|
40
|
+
|
|
41
|
+
### 4. Setup Native Host
|
|
34
42
|
|
|
35
43
|
```bash
|
|
36
|
-
gravity setup-native-host
|
|
44
|
+
npx gravity-core setup-native-host
|
|
37
45
|
```
|
|
38
46
|
|
|
39
47
|
This:
|
|
@@ -42,18 +50,10 @@ This:
|
|
|
42
50
|
- Sets up native messaging for Chrome
|
|
43
51
|
- Optionally restarts Chrome
|
|
44
52
|
|
|
45
|
-
### 4. Load Extension in Chrome
|
|
46
|
-
|
|
47
|
-
1. Open Chrome and go to `chrome://extensions`
|
|
48
|
-
2. Enable "Developer mode" (toggle in top right)
|
|
49
|
-
3. Click "Load unpacked"
|
|
50
|
-
4. Select the `~/.gravity-extension` folder
|
|
51
|
-
5. ✅ Done!
|
|
52
|
-
|
|
53
53
|
### 5. Test Connection
|
|
54
54
|
|
|
55
55
|
```bash
|
|
56
|
-
gravity test-connection
|
|
56
|
+
npx gravity-core test-connection
|
|
57
57
|
```
|
|
58
58
|
|
|
59
59
|
This verifies:
|
|
@@ -160,7 +160,7 @@ Browser Tab (DOM, CSS, Layout data)
|
|
|
160
160
|
|
|
161
161
|
### Fix Offscreen Modal
|
|
162
162
|
|
|
163
|
-
1. Terminal: Run `gravity setup-extension` and `gravity setup-native-host`
|
|
163
|
+
1. Terminal: Run `npx gravity-core setup-extension` and `npx gravity-core setup-native-host`
|
|
164
164
|
2. Chrome: Load extension from `~/.gravity-extension`
|
|
165
165
|
3. Browser: Open page with broken layout
|
|
166
166
|
4. Extension: Click icon → "Connect to Tab" (🟢 Green)
|
|
@@ -186,7 +186,7 @@ Browser Tab (DOM, CSS, Layout data)
|
|
|
186
186
|
Extract the Chrome extension to your home directory:
|
|
187
187
|
|
|
188
188
|
```bash
|
|
189
|
-
gravity setup-extension
|
|
189
|
+
npx gravity-core setup-extension
|
|
190
190
|
```
|
|
191
191
|
|
|
192
192
|
Creates `~/.gravity-extension/` ready to load in Chrome.
|
|
@@ -196,7 +196,7 @@ Creates `~/.gravity-extension/` ready to load in Chrome.
|
|
|
196
196
|
Configure native messaging for Chrome:
|
|
197
197
|
|
|
198
198
|
```bash
|
|
199
|
-
gravity setup-native-host
|
|
199
|
+
npx gravity-core setup-native-host
|
|
200
200
|
```
|
|
201
201
|
|
|
202
202
|
This command:
|
|
@@ -212,7 +212,7 @@ This command:
|
|
|
212
212
|
Verify everything is working:
|
|
213
213
|
|
|
214
214
|
```bash
|
|
215
|
-
gravity test-connection
|
|
215
|
+
npx gravity-core test-connection
|
|
216
216
|
```
|
|
217
217
|
|
|
218
218
|
Checks:
|
|
@@ -228,13 +228,13 @@ Checks:
|
|
|
228
228
|
Run the MCP server (used by your IDE):
|
|
229
229
|
|
|
230
230
|
```bash
|
|
231
|
-
gravity
|
|
231
|
+
npx gravity-core
|
|
232
232
|
```
|
|
233
233
|
|
|
234
234
|
### Show Help
|
|
235
235
|
|
|
236
236
|
```bash
|
|
237
|
-
gravity --help
|
|
237
|
+
npx gravity-core --help
|
|
238
238
|
```
|
|
239
239
|
|
|
240
240
|
## 🔧 API Reference
|
|
@@ -382,9 +382,9 @@ Contributions welcome! Please open an issue or PR on GitHub.
|
|
|
382
382
|
|
|
383
383
|
```bash
|
|
384
384
|
npm install gravity-core
|
|
385
|
-
gravity setup-extension
|
|
386
|
-
gravity setup-native-host
|
|
387
|
-
gravity test-connection
|
|
385
|
+
npx gravity-core setup-extension
|
|
386
|
+
npx gravity-core setup-native-host
|
|
387
|
+
npx gravity-core test-connection
|
|
388
388
|
```
|
|
389
389
|
|
|
390
390
|
Then configure your IDE and start debugging! 🎉
|
package/SETUP.md
CHANGED
|
@@ -65,7 +65,7 @@ This command:
|
|
|
65
65
|
|
|
66
66
|
5. **Writes registry key**
|
|
67
67
|
- Adds entry to Windows registry
|
|
68
|
-
- Location: `HKCU\Software\Google\Chrome\NativeMessagingHosts\com.
|
|
68
|
+
- Location: `HKCU\Software\Google\Chrome\NativeMessagingHosts\com.gravity.bridge`
|
|
69
69
|
|
|
70
70
|
6. **Optionally restarts Chrome**
|
|
71
71
|
```
|
|
@@ -210,7 +210,7 @@ GRAVITY_TIMEOUT=20000 gravity
|
|
|
210
210
|
2. Make sure you confirmed the registry modification
|
|
211
211
|
3. Check registry manually:
|
|
212
212
|
```
|
|
213
|
-
reg query "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.
|
|
213
|
+
reg query "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.gravity.bridge"
|
|
214
214
|
```
|
|
215
215
|
|
|
216
216
|
### "WebSocket connection failed" (test-connection)
|
|
@@ -284,7 +284,7 @@ To remove Gravity:
|
|
|
284
284
|
|
|
285
285
|
4. Remove registry entry (optional, Windows):
|
|
286
286
|
```
|
|
287
|
-
reg delete "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.
|
|
287
|
+
reg delete "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.gravity.bridge" /f
|
|
288
288
|
```
|
|
289
289
|
|
|
290
290
|
## Getting Help
|
package/dist/cli-utils.js
CHANGED
|
@@ -74,7 +74,7 @@ export function detectGravityExtensionId() {
|
|
|
74
74
|
try {
|
|
75
75
|
const manifest = JSON.parse(readFileSync(manifestPath, 'utf-8'));
|
|
76
76
|
// Check for both possible names
|
|
77
|
-
if (manifest.name === '
|
|
77
|
+
if (manifest.name === 'Gravity') {
|
|
78
78
|
return folder;
|
|
79
79
|
}
|
|
80
80
|
}
|
package/dist/cli-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-utils.js","sourceRoot":"","sources":["../src/cli-utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli-utils.js","sourceRoot":"","sources":["../src/cli-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -175,7 +175,7 @@ async function handleSetupNativeHost() {
|
|
|
175
175
|
}
|
|
176
176
|
// Step 4: Patch manifest with extension ID and path
|
|
177
177
|
const manifestPath = join(targetHostDir, 'manifest.json');
|
|
178
|
-
const hostBatPath = join(targetHostDir, '
|
|
178
|
+
const hostBatPath = join(targetHostDir, 'gravity-host.bat');
|
|
179
179
|
try {
|
|
180
180
|
patchManifest(manifestPath, extensionId, hostBatPath);
|
|
181
181
|
console.error('✅ Manifest patched with extension ID and path');
|
|
@@ -187,7 +187,7 @@ async function handleSetupNativeHost() {
|
|
|
187
187
|
// Step 5: Write registry key
|
|
188
188
|
console.error('📝 Writing registry key...');
|
|
189
189
|
try {
|
|
190
|
-
writeRegistryKey('com.
|
|
190
|
+
writeRegistryKey('com.gravity.bridge', manifestPath);
|
|
191
191
|
console.error('✅ Registry key written successfully');
|
|
192
192
|
}
|
|
193
193
|
catch (error) {
|
|
@@ -215,7 +215,7 @@ async function handleTestConnection() {
|
|
|
215
215
|
const checks = [];
|
|
216
216
|
// Check 1: Registry key exists
|
|
217
217
|
console.error('🔍 Checking registry key...');
|
|
218
|
-
const regKeyExists = registryKeyExists('com.
|
|
218
|
+
const regKeyExists = registryKeyExists('com.gravity.bridge');
|
|
219
219
|
checks.push({ name: 'Registry key exists', passed: regKeyExists });
|
|
220
220
|
if (regKeyExists) {
|
|
221
221
|
console.error(' ✅ Registry key found');
|
|
@@ -255,7 +255,7 @@ async function handleTestConnection() {
|
|
|
255
255
|
}
|
|
256
256
|
// Check 4: Native host executable exists
|
|
257
257
|
console.error('🔍 Checking native host executable...');
|
|
258
|
-
const hostPath = join(getGravityHostDir(), '
|
|
258
|
+
const hostPath = join(getGravityHostDir(), 'gravity-host.bat');
|
|
259
259
|
const hostExists = nativeHostExists(hostPath);
|
|
260
260
|
checks.push({ name: 'Native host executable found', passed: hostExists });
|
|
261
261
|
if (hostExists) {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-server.js
CHANGED
package/extension/background.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// ============================================================================
|
|
2
|
-
//
|
|
3
|
-
// Handles debugger attachment and
|
|
2
|
+
// Gravity - Background Script
|
|
3
|
+
// Handles debugger attachment and native messaging communication
|
|
4
4
|
// ============================================================================
|
|
5
5
|
|
|
6
6
|
// Debugger state
|
|
@@ -13,6 +13,171 @@ let debuggerState = {
|
|
|
13
13
|
attachmentTime: null
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
+
// Native messaging state
|
|
17
|
+
let nativePort = null;
|
|
18
|
+
let nativeHostConnected = false;
|
|
19
|
+
let keepAliveInterval = null;
|
|
20
|
+
|
|
21
|
+
// ============================================================================
|
|
22
|
+
// Native Messaging (Extension <-> Native Host)
|
|
23
|
+
// ============================================================================
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Connect to native messaging host
|
|
27
|
+
*/
|
|
28
|
+
function connectNativeHost() {
|
|
29
|
+
if (nativePort) {
|
|
30
|
+
console.log('Native host already connected');
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
try {
|
|
35
|
+
console.log('Connecting to native messaging host...');
|
|
36
|
+
nativePort = chrome.runtime.connectNative('com.gravity');
|
|
37
|
+
|
|
38
|
+
nativePort.onMessage.addListener((message) => {
|
|
39
|
+
console.log('Received from native host:', message);
|
|
40
|
+
handleNativeMessage(message);
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
nativePort.onDisconnect.addListener(() => {
|
|
44
|
+
const error = chrome.runtime.lastError;
|
|
45
|
+
console.log('Native host disconnected:', error?.message || 'unknown reason');
|
|
46
|
+
nativePort = null;
|
|
47
|
+
nativeHostConnected = false;
|
|
48
|
+
stopKeepAlive();
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
nativeHostConnected = true;
|
|
52
|
+
console.log('Connected to native messaging host');
|
|
53
|
+
|
|
54
|
+
// Start keep-alive to prevent service worker termination
|
|
55
|
+
startKeepAlive();
|
|
56
|
+
|
|
57
|
+
} catch (error) {
|
|
58
|
+
console.error('Failed to connect to native host:', error);
|
|
59
|
+
nativePort = null;
|
|
60
|
+
nativeHostConnected = false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Keep-alive mechanism to prevent service worker termination
|
|
66
|
+
*/
|
|
67
|
+
function startKeepAlive() {
|
|
68
|
+
if (keepAliveInterval) return;
|
|
69
|
+
|
|
70
|
+
keepAliveInterval = setInterval(() => {
|
|
71
|
+
if (nativePort) {
|
|
72
|
+
// Send a no-op message to keep the connection alive
|
|
73
|
+
try {
|
|
74
|
+
nativePort.postMessage({ type: 'keep-alive' });
|
|
75
|
+
} catch (e) {
|
|
76
|
+
// Connection may be dead
|
|
77
|
+
stopKeepAlive();
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}, 20000); // Every 20 seconds
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Stop keep-alive mechanism
|
|
85
|
+
*/
|
|
86
|
+
function stopKeepAlive() {
|
|
87
|
+
if (keepAliveInterval) {
|
|
88
|
+
clearInterval(keepAliveInterval);
|
|
89
|
+
keepAliveInterval = null;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Disconnect from native messaging host
|
|
95
|
+
*/
|
|
96
|
+
function disconnectNativeHost() {
|
|
97
|
+
stopKeepAlive();
|
|
98
|
+
|
|
99
|
+
if (nativePort) {
|
|
100
|
+
nativePort.disconnect();
|
|
101
|
+
nativePort = null;
|
|
102
|
+
nativeHostConnected = false;
|
|
103
|
+
console.log('Disconnected from native host');
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Send message to native host
|
|
109
|
+
*/
|
|
110
|
+
function sendToNativeHost(message) {
|
|
111
|
+
// Auto-reconnect if not connected
|
|
112
|
+
if (!nativePort || !nativeHostConnected) {
|
|
113
|
+
connectNativeHost();
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (!nativePort) {
|
|
117
|
+
console.error('Cannot send to native host - not connected');
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
try {
|
|
122
|
+
nativePort.postMessage(message);
|
|
123
|
+
console.log('Sent to native host:', message);
|
|
124
|
+
return true;
|
|
125
|
+
} catch (error) {
|
|
126
|
+
console.error('Failed to send to native host:', error);
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Handle messages from native host (CDP requests from MCP server)
|
|
133
|
+
*/
|
|
134
|
+
function handleNativeMessage(message) {
|
|
135
|
+
// Handle status messages from native host
|
|
136
|
+
if (message.type === 'status') {
|
|
137
|
+
console.log('Native host status:', message);
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
// Handle CDP requests from MCP server
|
|
142
|
+
if (message.type === 'cdp_request') {
|
|
143
|
+
const { id, method, params } = message;
|
|
144
|
+
|
|
145
|
+
if (!debuggerState.attached) {
|
|
146
|
+
sendToNativeHost({
|
|
147
|
+
type: 'cdp_response',
|
|
148
|
+
id,
|
|
149
|
+
error: { message: 'Debugger not attached' }
|
|
150
|
+
});
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// Execute CDP command with error handling
|
|
155
|
+
sendCDPCommand(debuggerState.tabId, method, params || {})
|
|
156
|
+
.then(result => {
|
|
157
|
+
try {
|
|
158
|
+
sendToNativeHost({
|
|
159
|
+
type: 'cdp_response',
|
|
160
|
+
id,
|
|
161
|
+
result
|
|
162
|
+
});
|
|
163
|
+
} catch (error) {
|
|
164
|
+
console.error('Failed to send CDP response:', error);
|
|
165
|
+
}
|
|
166
|
+
})
|
|
167
|
+
.catch(error => {
|
|
168
|
+
try {
|
|
169
|
+
sendToNativeHost({
|
|
170
|
+
type: 'cdp_response',
|
|
171
|
+
id,
|
|
172
|
+
error: { message: error.message }
|
|
173
|
+
});
|
|
174
|
+
} catch (sendError) {
|
|
175
|
+
console.error('Failed to send CDP error response:', sendError);
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
16
181
|
// ============================================================================
|
|
17
182
|
// Debugger Management
|
|
18
183
|
// ============================================================================
|
|
@@ -72,10 +237,16 @@ function attachDebugger(tabId) {
|
|
|
72
237
|
|
|
73
238
|
// Enable required CDP domains
|
|
74
239
|
enableCDPDomains(tabId);
|
|
240
|
+
|
|
241
|
+
// Connect to native host after debugger is attached
|
|
242
|
+
connectNativeHost();
|
|
75
243
|
});
|
|
76
244
|
});
|
|
77
245
|
}
|
|
78
246
|
|
|
247
|
+
/**
|
|
248
|
+
* Enable required CDP domains
|
|
249
|
+
*/
|
|
79
250
|
/**
|
|
80
251
|
* Enable required CDP domains
|
|
81
252
|
*/
|
|
@@ -115,6 +286,9 @@ function enableCDPDomains(tabId) {
|
|
|
115
286
|
function detachDebugger(tabId = null) {
|
|
116
287
|
const targetTabId = tabId || debuggerState.tabId || debuggerTabId;
|
|
117
288
|
|
|
289
|
+
// Disconnect native host first
|
|
290
|
+
disconnectNativeHost();
|
|
291
|
+
|
|
118
292
|
if (!targetTabId) {
|
|
119
293
|
console.log('No debugger to detach');
|
|
120
294
|
return;
|
|
@@ -196,10 +370,12 @@ function getDebuggerStatus() {
|
|
|
196
370
|
domainsEnabled: debuggerState.domainsEnabled,
|
|
197
371
|
lastError: debuggerState.lastError,
|
|
198
372
|
attachmentTime: debuggerState.attachmentTime,
|
|
199
|
-
uptime: debuggerState.attachmentTime ? Date.now() - debuggerState.attachmentTime : null
|
|
373
|
+
uptime: debuggerState.attachmentTime ? Date.now() - debuggerState.attachmentTime : null,
|
|
374
|
+
nativeHostConnected: nativeHostConnected
|
|
200
375
|
};
|
|
201
376
|
}
|
|
202
377
|
|
|
378
|
+
|
|
203
379
|
// ============================================================================
|
|
204
380
|
// Message Handlers (Popup <-> Background)
|
|
205
381
|
// ============================================================================
|
|
@@ -301,6 +477,9 @@ chrome.debugger.onDetach.addListener((source, reason) => {
|
|
|
301
477
|
debuggerState.domainsEnabled = false;
|
|
302
478
|
debuggerState.lastError = reason === 'target_closed' ? 'Tab was closed' : `Detached: ${reason}`;
|
|
303
479
|
debuggerTabId = null;
|
|
480
|
+
|
|
481
|
+
// Disconnect native host when debugger detaches
|
|
482
|
+
disconnectNativeHost();
|
|
304
483
|
}
|
|
305
484
|
|
|
306
485
|
// Notify popup if it's open
|
|
@@ -330,7 +509,9 @@ chrome.tabs.onRemoved.addListener((tabId, removeInfo) => {
|
|
|
330
509
|
debuggerState.domainsEnabled = false;
|
|
331
510
|
debuggerState.lastError = 'Tab was closed';
|
|
332
511
|
debuggerTabId = null;
|
|
512
|
+
|
|
513
|
+
disconnectNativeHost();
|
|
333
514
|
}
|
|
334
515
|
});
|
|
335
516
|
|
|
336
|
-
console.log('
|
|
517
|
+
console.log('Gravity extension loaded');
|
package/extension/content.js
CHANGED
package/extension/icon128.svg
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" class="icon icon-tabler icons-tabler-filled icon-tabler-settings"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M14.647 4.081a.724 .724 0 0 0 1.08 .448c2.439 -1.485 5.23 1.305 3.745 3.744a.724 .724 0 0 0 .447 1.08c2.775 .673 2.775 4.62 0 5.294a.724 .724 0 0 0 -.448 1.08c1.485 2.439 -1.305 5.23 -3.744 3.745a.724 .724 0 0 0 -1.08 .447c-.673 2.775 -4.62 2.775 -5.294 0a.724 .724 0 0 0 -1.08 -.448c-2.439 1.485 -5.23 -1.305 -3.745 -3.744a.724 .724 0 0 0 -.447 -1.08c-2.775 -.673 -2.775 -4.62 0 -5.294a.724 .724 0 0 0 .448 -1.08c-1.485 -2.439 1.305 -5.23 3.744 -3.745a.722 .722 0 0 0 1.08 -.447c.673 -2.775 4.62 -2.775 5.294 0zm-2.647 4.919a3 3 0 1 0 0 6a3 3 0 0 0 0 -6z" /></svg>
|
package/extension/icon16.svg
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-rocket"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 13a8 8 0 0 1 7 7a6 6 0 0 0 3 -5a9 9 0 0 0 6 -8a3 3 0 0 0 -3 -3a9 9 0 0 0 -8 6a6 6 0 0 0 -5 3" /><path d="M7 14a6 6 0 0 0 -3 6a6 6 0 0 0 6 -3" /><path d="M15 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /></svg>
|
package/extension/icon48.svg
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-world"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0" /><path d="M3.6 9h16.8" /><path d="M3.6 15h16.8" /><path d="M11.5 3a17 17 0 0 0 0 18" /><path d="M12.5 3a17 17 0 0 1 0 18" /></svg>
|
package/extension/manifest.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"manifest_version": 3,
|
|
3
|
-
"name": "
|
|
3
|
+
"name": "Gravity",
|
|
4
4
|
"version": "1.0.0",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "Gravity - Browser DevTools integration for MCP server",
|
|
6
6
|
"permissions": [
|
|
7
7
|
"debugger",
|
|
8
8
|
"tabs"
|
package/extension/popup.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "com.
|
|
3
|
-
"description": "Gravity
|
|
2
|
+
"name": "com.gravity.bridge",
|
|
3
|
+
"description": "Gravity - Native messaging host for Chrome extension",
|
|
4
4
|
"path": "PLACEHOLDER_PATH",
|
|
5
5
|
"type": "stdio",
|
|
6
6
|
"allowed_origins": [
|
package/package.json
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gravity-core",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
4
|
"description": "Gravity - AI-powered CSS layout diagnostics for any IDE. Connect your browser to get real-time layout issue detection.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
|
+
"bin": {
|
|
9
|
+
"gravity-core": "dist/cli.js"
|
|
10
|
+
},
|
|
8
11
|
"files": [
|
|
9
12
|
"dist",
|
|
10
13
|
"extension",
|