dis-gravity 1.1.0 โ†’ 1.2.5

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
@@ -1,313 +1,471 @@
1
- <p align="center">
2
- <img src="media/icon.png" width="140" alt="Dis-Gravity Logo" />
3
- </p>
4
-
5
- <h1 align="center">Dis-Gravity</h1>
6
-
7
- <p align="center">
8
- <strong>The Ultimate Multi-IDE Discord Remote Bridge & AI Coding Interface</strong>
9
- </p>
10
-
11
- <p align="center">
12
- <a href="#supported-ides"><img src="https://img.shields.io/badge/Supports-Antigravity%20%7C%20VS%20Code%20%7C%20Cursor%20%7C%20Windsurf%20%7C%20JetBrains-blueviolet?style=flat-square" alt="Supported IDEs"></a>
13
- <a href="#installation"><img src="https://img.shields.io/badge/VS%20Code-v1.93+-007acc?style=flat-square&logo=visualstudiocode" alt="VS Code Version"></a>
14
- <a href="LICENSE.txt"><img src="https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square" alt="MIT License"></a>
15
- <a href="https://discord.com"><img src="https://img.shields.io/badge/Discord-discord.js%20v14-5865F2?style=flat-square&logo=discord" alt="Discord.js"></a>
16
- </p>
17
-
18
- ---
19
-
20
- > **Control your IDE, AI assistant, shell, and git repo directly from Discord on mobile, tablet, or secondary machines.**
21
- > Send prompts, approve tool executions, inspect real-time streaming steps, run terminal commands, view colored git diffs, download artifacts, and receive retina-crisp visual PNG table cards anywhere you go.
22
-
23
- ---
24
-
25
- <p align="center">
26
- <img src="media/dis-gravity-demo.gif" width="860" alt="Dis-Gravity Live Split-Screen Demo" />
27
- </p>
28
-
29
- ---
30
-
31
- ## ๐Ÿ“‘ Table of Contents
32
-
33
- - [Supported IDEs & Environments](#supported-ides--environments)
34
- - [๐Ÿš€ 3-Minute Quickstart Guide](#-3-minute-quickstart-guide)
35
- - [Step 1: Create Your Discord Bot](#step-1-create-your-discord-bot)
36
- - [Step 2: Invite the Bot to Your Server](#step-2-invite-the-bot-to-your-server)
37
- - [Step 3: Retrieve Channel ID & User ID](#step-3-retrieve-channel-id--user-id)
38
- - [Step 4: Configure Dis-Gravity in Your IDE](#step-4-configure-dis-gravity-in-your-ide)
39
- - [Connecting Your Specific IDE](#connecting-your-specific-ide)
40
- - [Visual Studio Code & Copilot (Zero Port Required)](#1-visual-studio-code--github-copilot-zero-port-required)
41
- - [Google Antigravity, Cursor AI & Windsurf (Port 9000)](#2-google-antigravity-cursor-ai--windsurf-port-9000)
42
- - [JetBrains, Neovim & Headless Servers (Standalone CLI Daemon)](#3-jetbrains-neovim--headless-servers-standalone-cli-daemon)
43
- - [๐Ÿ›ก๏ธ Security Best Practices (`allowedUsers`)](#๏ธ-security-best-practices-allowedusers)
44
- - [๐ŸŒŸ Key Features](#-key-features)
45
- - [โŒจ๏ธ Slash Commands & Text Shortcuts](#๏ธ-slash-commands--text-shortcuts)
46
- - [โš™๏ธ Configuration Reference](#๏ธ-configuration-reference)
47
- - [โ“ Troubleshooting & FAQ](#-troubleshooting--faq)
48
-
49
- ---
50
-
51
- ## Supported IDEs & Environments
52
-
53
- | IDE / Environment | Provider Mode (`agentProvider`) | Connection Type | Autonomous Tools |
54
- |---|---|---|---|
55
- | **Google Antigravity** | `antigravity` or `auto` | CDP (`:9000`) | Native IDE Agent + Approval Dialogs + Lexical Mode Chips |
56
- | **VS Code + GitHub Copilot** | `copilot` or `auto` | Native `vscode.lm` | Autonomous ReAct Loop (`view`, `edit`, `sh`, `git`, `tree`) |
57
- | **Cursor AI** | `cursor` or `auto` | CDP (`:9000`) | Composer & Chat (`/plan`, `/edit`, `@Codebase`) |
58
- | **Windsurf** | `windsurf` or `auto` | CDP (`:9000`) | Cascade Chat Webview with deep iframe traversal |
59
- | **JetBrains / Neovim / Headless** | `cli` (`bin/dis-gravity.js`) | Subprocess / PTY | Universal CLI (`agy`, `claude`, `aider`, `shell`) |
60
-
61
- ---
62
-
63
- ## ๐Ÿš€ 3-Minute Quickstart Guide
64
-
65
- ### Step 1: Create Your Discord Bot
66
-
67
- 1. Open the **[Discord Developer Portal](https://discord.com/developers/applications)** and sign in.
68
- 2. Click **New Application** (top right), enter `Dis-Gravity` (or your preferred name), and click **Create**.
69
- 3. In the left navigation, select **Bot**:
70
- - Under **Build-A-Bot**, click **Reset Token** and copy the **Bot Token** (keep this secret!).
71
- 4. Scroll down to **Privileged Gateway Intents**:
72
- > [!IMPORTANT]
73
- > You **MUST** turn ON the following intents, otherwise Discord will silently drop message text and your bot will fail to process chat commands:
74
- - โœ… **MESSAGE CONTENT INTENT** *(Required to read messages and slash prompts)*
75
- - โœ… **SERVER MEMBERS INTENT** *(Recommended for user whitelist lookups)*
76
- 5. Click **Save Changes**.
77
-
78
- ---
79
-
80
- ### Step 2: Invite the Bot to Your Server
81
-
82
- 1. In the left navigation, go to **OAuth2** โ†’ **OAuth2 URL Generator**.
83
- 2. Under **Scopes**, select:
84
- - โœ… `bot`
85
- - โœ… `applications.commands` *(Required for native slash commands `/`)*
86
- 3. Under **Bot Permissions**, select:
87
- - โœ… `Send Messages`
88
- - โœ… `Create Public Threads`
89
- - โœ… `Send Messages in Threads`
90
- - โœ… `Embed Links`
91
- - โœ… `Attach Files`
92
- - โœ… `Read Message History`
93
- - โœ… `Use Slash Commands`
94
- 4. Copy the generated **OAuth2 URL** at the bottom, paste it into your browser, choose your server, and click **Authorize**.
95
-
96
- ---
97
-
98
- ### Step 3: Retrieve Channel ID & User ID
99
-
100
- 1. In Discord, go to **User Settings** (โš™๏ธ bottom left) โ†’ **Advanced** โ†’ turn **ON** **Developer Mode**.
101
- 2. Right-click the channel where you want Dis-Gravity to chat โ†’ click **Copy Channel ID**.
102
- 3. Right-click your own avatar/profile in the chat โ†’ click **Copy User ID** (used for security access control).
103
-
104
- ---
105
-
106
- ### Step 4: Configure Dis-Gravity in Your IDE
107
-
108
- 1. Open VS Code or Antigravity IDE with the Dis-Gravity extension installed.
109
- 2. Click the **Discord** icon in the Activity Bar (left sidebar) to open Dis-Gravity settings.
110
- 3. Fill in the fields:
111
- - **Bot Token**: Paste the token from Step 1.
112
- - **Channel ID**: Paste the Channel ID from Step 3.
113
- - **Allowed Users**: Paste your Discord User ID from Step 3.
114
- - **Agent Provider**: Choose `auto` (or `copilot`, `antigravity`, `cursor`, `windsurf`, `cli`).
115
- 4. Click **Save Settings** or reload your window (`Developer: Reload Window`). Both status dots will turn green:
116
- - ๐ŸŸข **Discord: Connected**
117
- - ๐ŸŸข **CDP / Agent: Connected**
118
-
119
- ---
120
-
121
- ## Connecting Your Specific IDE
122
-
123
- ### 1. Visual Studio Code & GitHub Copilot (Zero Port Required)
124
-
125
- If you are using standard Visual Studio Code with GitHub Copilot Chat:
126
- 1. In settings, set `antigravity-discord.agentProvider` to `"copilot"`.
127
- 2. **Zero debug port is needed!** Dis-Gravity communicates directly via VS Code's native Language Model API (`vscode.lm`).
128
- 3. Dis-Gravity automatically activates an **autonomous ReAct tool loop** supporting `view_file`, `edit_file`, `run_command`, and `git_diff` with live step streaming and Discord confirmation buttons (`[ ๐ŸŸข Allow ]`, `[ ๐Ÿ”ด Deny ]`) for sensitive changes.
129
-
130
- ---
131
-
132
- ### 2. Google Antigravity, Cursor AI & Windsurf (Port 9000)
133
-
134
- These IDEs drive agent chat via Chrome DevTools Protocol (CDP) and require launching the application with `--remote-debugging-port=9000`.
135
-
136
- #### **Windows**
137
- 1. Right-click your desktop shortcut for Antigravity / Cursor / Windsurf โ†’ select **Properties**.
138
- 2. In the **Target** box, append ` --remote-debugging-port=9000` to the end of the path:
139
- ```text
140
- "C:\Users\...\AppData\Local\Programs\Antigravity\Antigravity.exe" --remote-debugging-port=9000
141
- ```
142
- 3. Click **Apply** and launch the IDE from this shortcut.
143
-
144
- #### **macOS**
145
- Launch via Terminal or save a shell script / Automator app:
146
- ```bash
147
- # Google Antigravity
148
- open -a "Google Antigravity" --args --remote-debugging-port=9000
149
-
150
- # Cursor
151
- open -a "Cursor" --args --remote-debugging-port=9000
152
-
153
- # Windsurf
154
- open -a "Windsurf" --args --remote-debugging-port=9000
155
- ```
156
-
157
- #### **Linux**
158
- ```bash
159
- antigravity --remote-debugging-port=9000
160
- # or cursor --remote-debugging-port=9000
161
- ```
162
-
163
- ---
164
-
165
- ### 3. JetBrains, Neovim & Headless Servers (Standalone CLI Daemon)
166
-
167
- Dis-Gravity includes a standalone, editor-agnostic daemon that runs in any terminal or remote SSH session:
168
-
169
- ```bash
170
- # Run directly via Node.js
171
- node bin/dis-gravity.js --token="YOUR_BOT_TOKEN" --channel="CHANNEL_ID" --workspace="." --allowed-users="YOUR_USER_ID"
172
- ```
173
-
174
- Or install globally / link:
175
- ```bash
176
- npm link
177
- dis-gravity --token="YOUR_BOT_TOKEN" --channel="CHANNEL_ID" --provider="cli"
178
- ```
179
-
180
- **CLI Daemon Flags:**
181
- - `--token`, `-t`: Discord Bot Token (or `DISCORD_BOT_TOKEN` env var)
182
- - `--channel`, `-c`: Discord Channel ID (or `DISCORD_CHANNEL_ID` env var)
183
- - `--guild`, `-g`: Discord Guild ID for instant slash command registration
184
- - `--allowed-users`, `-u`: Comma-separated Discord User IDs allowed to issue commands
185
- - `--provider`, `-p`: AI engine (`cli`, `antigravity`, `cursor`, `windsurf`)
186
- - `--workspace`, `-w`: Path to root workspace directory (defaults to current working directory)
187
- - `--table-style`: Tabular style (`image`, `cards`, `rounded`, `boxed`, `ascii`)
188
-
189
- ---
190
-
191
- ## ๐Ÿ›ก๏ธ Security Best Practices (`allowedUsers`)
192
-
193
- > [!CAUTION]
194
- > **Never connect Dis-Gravity to a public or multi-user Discord channel without configuring `allowedUsers`!**
195
-
196
- Because Dis-Gravity allows remote terminal execution (`/sh`) and file reading (`/cat`), anyone with access to the channel can execute commands on your host workstation if `allowedUsers` is empty.
197
-
198
- 1. **Always configure `allowedUsers`**: Enter your Discord User ID (e.g. `123456789012345678`). Multiple authorized users can be separated by commas (`123456789,987654321`).
199
- 2. **Use a Private Channel**: Dedicate a private Discord text channel accessible only to you and the bot.
200
- 3. **Interactive Approvals**: File modifications and terminal executions in Copilot / CLI modes prompt you with interactive `[ ๐ŸŸข Allow ]` and `[ ๐Ÿ”ด Deny ]` buttons before changes take effect.
201
-
202
- ---
203
-
204
- ## ๐ŸŒŸ Key Features
205
-
206
- ### ๐Ÿ–ผ๏ธ High-Resolution Visual Table Image Cards (`/table`, `!table`)
207
- Discord mobile apps suffer from a notorious line-wrapping bug that scrambled monospaced ASCII tables into unreadable text blocks. Dis-Gravity dynamically converts Markdown tables into **high-resolution 2x retina PNG cards** rendered natively in Discord messages, complete with dark theme styling, zebra rows, bold headers, colored status chips (`#57f287` green, `#fee75c` yellow, `#ed4245` red), full-color emojis, and pinch-to-zoom support. Features headless browser fallback (`msedge`/`chrome`) for environments without CDP ports.
208
-
209
- ### ๐ŸŽฎ 1-Click Command Palette (`/palette`, `/action`)
210
- Execute any of VS Code's 1,000+ commands remotely from your phone with 1 tap. Pre-built buttons across Developer (Reload Window, Restart Extension Host), Terminal (New, Toggle, Kill), Files (Save All, Close All), and Git (Sync, Pull, Push), plus live autocomplete search for any IDE command.
211
-
212
- ### ๐Ÿ’ป Remote Shell & Git Suite (`/sh`, `/git`, `/diff`)
213
- Execute terminal commands in your workspace root (`/sh npm test`), inspect syntax-highlighted stdout/stderr with exit codes and execution duration, review git status (`/git status`), browse colored unified diffs (`/diff`), stage all changes, and export `.patch` files.
214
-
215
- ### ๐Ÿ“ Remote File Explorer & Slicer (`/cat`, `/tree`, `/open`)
216
- Read files with syntax highlighting and line numbers (`/cat src/index.js 1 50`), inspect visual directory trees (`/tree src 2`), or open files directly in your desktop IDE editor tabs remotely (`/open README.md`).
217
-
218
- ### ๐Ÿ“ฆ Artifact Discovery & Download (`/artifact`, `/get`)
219
- Browse and download AI-generated walkthroughs, architectural plans, patch files, diagrams, or workspace assets directly in Discord with interactive dropdown menus and path-traversal security protection.
220
-
221
- ### โณ Live Step Streaming & Observability
222
- Replaces static wait timers with real-time DOM step updates: `โณ Working (18s): ๐Ÿ” Viewing file package.json`, `โšก Running command npm test`, `๐Ÿ’ญ Thinking...`.
223
-
224
- ---
225
-
226
- ## โŒจ๏ธ Slash Commands & Text Shortcuts
227
-
228
- | Command | Chat Shortcut | Description |
229
- |---|---|---|
230
- | `/plan <prompt>` | `!plan <prompt>` | Activates Planning Mode with native IDE chip |
231
- | `/goal <prompt>` | `!goal <prompt>` | Activates Goal Mode with autonomous execution instructions |
232
- | `/grill <prompt>` | `!grill <prompt>` | Activates Alignment Interview mode |
233
- | `/sh <cmd>` | `!sh <cmd>` or `$ <cmd>` | Execute shell command in workspace root |
234
- | `/git [status\|diff\|log]` | `!git [subcommand]` | Remote Git repository management |
235
- | `/diff [file] [staged]` | `!diff` | Colored git diff inspector with 1-tap Stage/Push |
236
- | `/cat <path> [start] [end]` | `!cat <path>` | Read file contents with syntax highlighting |
237
- | `/tree [dir] [depth]` | `!tree` | Visual workspace directory tree |
238
- | `/open <path>` | `!open <path>` | Open file in active desktop IDE editor tab |
239
- | `/palette [category]` | `!palette` | 1-click command palette dashboard |
240
- | `/action <command>` | `!run <id>` | Trigger any IDE command with live autocomplete |
241
- | `/info` | `!info`, `!workspace` | Host hardware, CPU, memory & workspace health |
242
- | `/status` | `!status` | Bridge connection status, model & queue health |
243
- | `/models` | `!models` | Interactive AI model selector dropdown |
244
- | `/effort <level>` | `!effort <level>`, `!high` | Reasoning effort switcher (Low, Medium, High) |
245
- | `/table [style]` | `!table [style]` | Tabular style switcher (`image`, `cards`, `rounded`, `boxed`, `ascii`) |
246
- | `/artifact [name]` | `!artifact` | Browse and download AI-generated artifacts |
247
- | `/get <path>` | `!get <path>` | Download file from workspace or brain directory |
248
- | `/stop` | `!stop`, `cancel` | Emergency abort running AI generation |
249
- | `/new` | `!new` | Clear conversation history and reset context |
250
- | `/help` | `!help` | Display command help guide |
251
-
252
- ---
253
-
254
- ## โš™๏ธ Configuration Reference
255
-
256
- Configure via VS Code Settings GUI or in `.vscode/settings.json`:
257
-
258
- ```json
259
- {
260
- "antigravity-discord.botToken": "YOUR_DISCORD_BOT_TOKEN",
261
- "antigravity-discord.channelId": "YOUR_DISCORD_CHANNEL_ID",
262
- "antigravity-discord.allowedUsers": "123456789012345678",
263
- "antigravity-discord.agentProvider": "auto",
264
- "antigravity-discord.tableStyle": "image",
265
- "antigravity-discord.autoAttachTableImages": true,
266
- "antigravity-discord.debugPort": 9000,
267
- "antigravity-discord.cursorPort": 9000,
268
- "antigravity-discord.windsurfPort": 9000,
269
- "antigravity-discord.cliAgentPath": "auto",
270
- "antigravity-discord.enableCopilotReAct": true,
271
- "antigravity-discord.copilotMaxToolSteps": 10
272
- }
273
- ```
274
-
275
- ---
276
-
277
- ## โ“ Troubleshooting & FAQ
278
-
279
- #### 1. "The bot is online in Discord, but it doesn't respond to messages."
280
- - **Root Cause**: The **Message Content Intent** is disabled in the Discord Developer Portal.
281
- - **Fix**: Go to [Discord Developer Portal](https://discord.com/developers/applications) โ†’ select your Application โ†’ **Bot** tab โ†’ under **Privileged Gateway Intents**, turn **ON** **MESSAGE CONTENT INTENT** โ†’ click **Save Changes**.
282
-
283
- #### 2. "Bridge Status shows ๐Ÿ”ด Disconnected."
284
- - **If using Antigravity, Cursor, or Windsurf**: Launch the IDE with `--remote-debugging-port=9000` (see instructions [above](#2-google-antigravity-cursor-ai--windsurf-port-9000)).
285
- - **If using standard VS Code**: Change `antigravity-discord.agentProvider` to `"copilot"` in settings. It connects natively via `vscode.lm` with zero ports required.
286
-
287
- #### 3. "I received `โ›” Unauthorized: Your Discord User ID is not on the whitelist`."
288
- - Right-click your profile in Discord โ†’ click **Copy User ID**. Open Dis-Gravity settings in the IDE and paste your User ID into **Allowed Users**.
289
-
290
- #### 4. "My table columns are wrapping into a jumble on my mobile phone."
291
- - Run `/table image` or `!table image` in Discord. Dis-Gravity will automatically render tables into high-DPI visual PNG image cards that display cleanly without text wrapping on any screen size.
292
-
293
- ---
294
-
295
- ## ๐Ÿ“ฆ Installation
296
-
297
- ### Install from VSIX Release
298
- 1. Download `dis-gravity-1.1.0.vsix` from [Releases](https://github.com/sambath-rethinakumar/Dis-Gravity/releases).
299
- 2. In VS Code / Antigravity: `Ctrl+Shift+P` โ†’ **Extensions: Install from VSIX...** โ†’ select the `.vsix` file.
300
-
301
- ### Build from Source
302
- ```bash
303
- git clone https://github.com/sambath-rethinakumar/Dis-Gravity.git
304
- cd Dis-Gravity
305
- npm install
306
- npx @vscode/vsce package --no-dependencies
307
- ```
308
-
309
- ---
310
-
311
- ## ๐Ÿ“„ License
312
-
313
- MIT ยฉ [Anon King](https://github.com/sambath-rethinakumar/Dis-Gravity)
1
+ <p align="center">
2
+ <img src="https://gitlab.com/rethinakumarsambath8/dis-gravity/-/raw/main/media/icon.png" width="140" alt="Dis-Gravity Logo" />
3
+ </p>
4
+
5
+ <h1 align="center">Dis-Gravity</h1>
6
+
7
+ <p align="center">
8
+ <strong>Connect &amp; Control Your IDE from Mobile โ€” The Ultimate Multi-IDE Discord Remote Bridge</strong>
9
+ </p>
10
+
11
+ <p align="center">
12
+ <a href="#supported-ides--environments"><img src="https://img.shields.io/badge/Supports-Antigravity%20%7C%20VS%20Code%20%7C%20Cursor%20%7C%20Windsurf%20%7C%20JetBrains-blueviolet?style=flat-square" alt="Supported IDEs"></a>
13
+ <a href="https://www.npmjs.com/package/dis-gravity"><img src="https://img.shields.io/npm/v/dis-gravity?style=flat-square&color=cb3837&logo=npm" alt="npm version"></a>
14
+ <a href="#installation"><img src="https://img.shields.io/badge/VS%20Code-v1.93+-007acc?style=flat-square&logo=visualstudiocode" alt="VS Code Version"></a>
15
+ <a href="https://gitlab.com/rethinakumarsambath8/dis-gravity/-/blob/main/LICENSE.txt"><img src="https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square" alt="MIT License"></a>
16
+ <a href="https://discord.com"><img src="https://img.shields.io/badge/Discord-discord.js%20v14-5865F2?style=flat-square&logo=discord" alt="Discord.js"></a>
17
+ </p>
18
+
19
+ ---
20
+
21
+ > **Connect your IDE to mobile and control VS Code, Google Antigravity, and Cursor directly from Discord.**
22
+ > Approve AI agent tool executions in 38ms, inspect real-time streaming steps, run terminal commands, view colored git diffs, download artifacts, and control your development workspace from your phone with **zero inbound open ports**.
23
+
24
+ ---
25
+
26
+ <p align="center">
27
+ <img src="https://gitlab.com/rethinakumarsambath8/dis-gravity/-/raw/main/media/dis-gravity-demo.gif" width="860" alt="Dis-Gravity live 2X split-screen demo: connecting and controlling desktop IDE from mobile Discord in 38 milliseconds" />
28
+ </p>
29
+
30
+ ---
31
+
32
+ ## ๐Ÿ“ฑ How Can I Connect My IDE to Mobile?
33
+
34
+ Connecting your desktop IDE (VS Code, Google Antigravity, Cursor, Windsurf) to your iOS or Android phone takes under 90 seconds with Dis-Gravity:
35
+
36
+ 1. **Launch Dis-Gravity on your desktop**:
37
+ Run the zero-install CLI daemon or install the extension (`.vsix`) in your IDE:
38
+ ```bash
39
+ npx dis-gravity@latest
40
+ ```
41
+ 2. **Connect your private Discord bot**:
42
+ Run the frictionless setup wizard and paste your bot token. Dis-Gravity automatically enables Gateway Message Content intent, configures permissions, and provisions a secure channel:
43
+ ```bash
44
+ dis-gravity setup
45
+ ```
46
+ 3. **Open Discord on your mobile phone**:
47
+ Open Discord on your iOS or Android phone. Your IDE is now fully connected to mobile! You can approve prompts in 38ms, run terminal commands, and stream AI coding thoughts on the go with **zero inbound open ports**.
48
+
49
+ ---
50
+
51
+ ## ๐ŸŽฎ How to Control IDE with Mobile
52
+
53
+ Once your IDE is connected to mobile via Dis-Gravity, you have full remote control:
54
+
55
+ * **โšก 1-Tap 38ms AI Approvals**: When an AI agent prompts for terminal or file permission, tap the interactive Discord button on your phone to inject a native DOM click via Chrome DevTools Protocol (CDP) in 38ms.
56
+ * **๐Ÿ’ป Remote Mobile Terminal**: Type `/sh pytest`, `/sh npm test`, or `/sh git status` in your mobile Discord chat to run shell commands in your host IDE with real-time output.
57
+ * **๐Ÿ“ก In-Place Step Streaming**: Watch AI reasoning, file inspections, and edits update live inside a single Discord embed card without mobile notification spam.
58
+ * **๐Ÿ–ผ๏ธ 2x Retina Visual Cards**: Inspect high-DPI rendered PNG cards of markdown tables and colorized git diffs directly on mobile screens.
59
+ * **๐Ÿ”„ Multi-IDE Switching**: Control Google Antigravity, VS Code with Copilot, Cursor AI, Windsurf, or Claude Desktop interchangeably.
60
+
61
+ ---
62
+
63
+ ## ๐Ÿ“‘ Table of Contents
64
+
65
+ - [๐Ÿ“ฑ How Can I Connect My IDE to Mobile?](#-how-can-i-connect-my-ide-to-mobile)
66
+ - [๐ŸŽฎ How to Control IDE with Mobile](#-how-to-control-ide-with-mobile)
67
+ - [Supported IDEs & Environments](#supported-ides--environments)
68
+ - [๐Ÿ“ฆ Installation](#-installation)
69
+ - [Option 1: Instant via npx (Zero Install)](#option-1-instant-via-npx-zero-install)
70
+ - [Option 2: Install Global CLI via npm](#option-2-install-global-cli-via-npm)
71
+ - [Option 3: Install VS Code / Antigravity Extension (.vsix)](#option-3-install-vs-code--antigravity-extension-vsix)
72
+ - [Option 4: Install Claude Desktop Extension (.mcpb / .dxt)](#option-4-install-claude-desktop-extension-mcpb--dxt)
73
+ - [Option 5: Build .vsix or .mcpb from Source](#option-5-build-vsix-or-mcpb-from-source)
74
+ - [๐Ÿš€ 3-Minute Quickstart Guide](#-3-minute-quickstart-guide)
75
+ - [Step 1: Create Your Discord Bot](#step-1-create-your-discord-bot)
76
+ - [Step 2: Invite the Bot to Your Server](#step-2-invite-the-bot-to-your-server)
77
+ - [Step 3: Retrieve Channel ID & User ID](#step-3-retrieve-channel-id--user-id)
78
+ - [Step 4: Configure Dis-Gravity in Your IDE](#step-4-configure-dis-gravity-in-your-ide)
79
+ - [Connecting Your Specific IDE](#connecting-your-specific-ide)
80
+ - [1. Visual Studio Code & GitHub Copilot (Zero Port Required)](#1-visual-studio-code--github-copilot-zero-port-required)
81
+ - [2. Google Antigravity, Cursor AI & Windsurf (Port 9000)](#2-google-antigravity-cursor-ai--windsurf-port-9000)
82
+ - [3. JetBrains, Neovim & Headless Servers (Standalone CLI Daemon)](#3-jetbrains-neovim--headless-servers-standalone-cli-daemon)
83
+ - [4. Claude Desktop & Claude Code (Model Context Protocol / MCP)](#4-claude-desktop--claude-code-model-context-protocol--mcp)
84
+ - [๐Ÿ›ก๏ธ Security Best Practices (`allowedUsers`)](#๏ธ-security-best-practices-allowedusers)
85
+ - [๐ŸŒŸ Key Features](#-key-features)
86
+ - [โŒจ๏ธ Slash Commands & Text Shortcuts](#๏ธ-slash-commands--text-shortcuts)
87
+ - [โš™๏ธ Configuration Reference](#๏ธ-configuration-reference)
88
+ - [โ“ Troubleshooting & FAQ](#-troubleshooting--faq)
89
+ - [๐Ÿ“„ License](#-license)
90
+
91
+ ---
92
+
93
+ ## Supported IDEs & Environments
94
+
95
+ | IDE / Environment | Provider Mode (`agentProvider`) | Connection Type | Autonomous Tools |
96
+ |---|---|---|---|
97
+ | **Google Antigravity** | `antigravity` or `auto` | CDP (`:9000`) | Native IDE Agent + Approval Dialogs + Lexical Mode Chips |
98
+ | **VS Code + GitHub Copilot** | `copilot` or `auto` | Native `vscode.lm` | Autonomous ReAct Loop (`view`, `edit`, `sh`, `git`, `tree`) |
99
+ | **Cursor AI** | `cursor` or `auto` | CDP (`:9000`) | Composer & Chat (`/plan`, `/edit`, `@Codebase`) |
100
+ | **Windsurf** | `windsurf` or `auto` | CDP (`:9000`) | Cascade Chat Webview with deep iframe traversal |
101
+ | **Claude Desktop & Claude Code** | `mcp` (`mcp/server.js`) | Model Context Protocol (`stdio`) | Interactive Discord Approval Buttons (`allow`/`deny`), Notifications, Bridge Status |
102
+ | **JetBrains / Neovim / Headless** | `cli` (`bin/dis-gravity.js`) | Subprocess / PTY | Universal CLI (`agy`, `claude`, `aider`, `shell`) |
103
+
104
+ ---
105
+
106
+ ## ๐Ÿ“ฆ Installation
107
+
108
+ Choose the setup that best fits your workflow:
109
+
110
+ ### Option 1: Instant via npx (Zero Install)
111
+ Run the standalone Dis-Gravity CLI daemon directly from npm without installing:
112
+
113
+ ```bash
114
+ npx dis-gravity --token="YOUR_BOT_TOKEN" --channel="YOUR_CHANNEL_ID" --provider="cli"
115
+ ```
116
+
117
+ ### Option 2: Install Global CLI via npm
118
+ Install the `dis-gravity` command globally on your machine:
119
+
120
+ ```bash
121
+ npm install -g dis-gravity
122
+ dis-gravity --help
123
+ ```
124
+
125
+ ### Option 3: Install VS Code / Antigravity Extension (.vsix)
126
+ 1. Download `dis-gravity-1.2.3.vsix` from [GitLab Releases](https://gitlab.com/rethinakumarsambath8/dis-gravity/-/releases) or the root of this repository.
127
+ 2. In VS Code or Google Antigravity IDE:
128
+ - Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on macOS).
129
+ - Type **Extensions: Install from VSIX...** and select `dis-gravity-1.2.3.vsix`.
130
+
131
+ ### Option 4: Install Claude Desktop Extension (.mcpb / .dxt)
132
+ Dis-Gravity packages as a native **Anthropic Model Context Protocol Bundle** (`.mcpb`) and legacy DXT archive (`.dxt`):
133
+
134
+ 1. Download `dis-gravity-1.2.3.mcpb` (or `dis-gravity-1.2.3.dxt`) from [GitLab Releases](https://gitlab.com/rethinakumarsambath8/dis-gravity/-/releases).
135
+ 2. In **Claude Desktop**:
136
+ - Double-click `dis-gravity-1.2.3.mcpb` or go to **Settings** โ†’ **Extensions** โ†’ **Install Extension...** and select the file.
137
+ - Enter your `bot_token`, `channel_id`, and optional `allowed_users` in the configuration panel.
138
+ 3. For **Claude Code CLI**, connect directly via stdio:
139
+ ```bash
140
+ claude mcp add dis-gravity node /path/to/Dis-Gravity/mcp/server.js \
141
+ -e DISCORD_BOT_TOKEN="YOUR_BOT_TOKEN" \
142
+ -e DISCORD_CHANNEL_ID="YOUR_CHANNEL_ID" \
143
+ -e ALLOWED_USERS="YOUR_DISCORD_USER_ID"
144
+ ```
145
+
146
+ ### Option 5: Build .vsix or .mcpb from Source
147
+ ```bash
148
+ git clone https://gitlab.com/rethinakumarsambath8/dis-gravity.git
149
+ cd Dis-Gravity
150
+ npm install
151
+
152
+ # Build VS Code .vsix package:
153
+ npm run package
154
+
155
+ # Build Claude Desktop .mcpb & .dxt bundles:
156
+ npm run package:mcpb
157
+ ```
158
+ *(The production extension and CLI bundles are pre-compiled and self-contained; packaging produces `dis-gravity-1.2.0.vsix` immediately).*
159
+
160
+ ---
161
+
162
+ ## โšก 60-Second Frictionless Setup Wizard (Recommended)
163
+
164
+ Dis-Gravity automates all tedious Discord developer configurationsโ€”Message Content intents, OAuth2 permissions, private `#dis-gravity` channel creation, owner whitelisting, and secure secret storageโ€”in **under 90 seconds**. You only do **one manual thing**: paste your Discord bot token.
165
+
166
+ ### For VS Code, Google Antigravity IDE & Cursor (Extension)
167
+ 1. Open the Command Palette (`Ctrl+Shift+P` / `Cmd+Shift+P`).
168
+ 2. Run **`Dis-Gravity: Run Setup Wizard`** (or click **โšก Launch Setup Wizard** in the Dis-Gravity sidebar).
169
+ 3. Paste your Discord bot token.
170
+ 4. The wizard automatically enables **Message Content Intent** via Discord API, generates your invite link, configures a private locked `#dis-gravity` channel, whitelists your user ID, and connects securely via `SecretStorage`.
171
+
172
+ ### For Standalone CLI, JetBrains, Neovim & Headless (CLI)
173
+ Run the interactive CLI wizard in any terminal:
174
+ ```bash
175
+ npx dis-gravity setup
176
+ ```
177
+ Dis-Gravity will inspect your bot, auto-enable intents, open the browser for server authorization, create `#dis-gravity`, and save credentials to `~/.dis-gravity/config.json` with strict `0600` permissions.
178
+
179
+ <details>
180
+ <summary><b>๐Ÿ› ๏ธ Manual Setup Guide (Click to expand)</b></summary>
181
+
182
+ ### Step 1: Create Your Discord Bot
183
+
184
+ 1. Open the **[Discord Developer Portal](https://discord.com/developers/applications)** and sign in.
185
+ 2. Click **New Application** (top right), enter `Dis-Gravity` (or your preferred name), and click **Create**.
186
+ 3. In the left navigation, select **Bot**:
187
+ - Under **Build-A-Bot**, click **Reset Token** and copy the **Bot Token** (keep this secret!).
188
+ 4. Scroll down to **Privileged Gateway Intents**:
189
+ > [!IMPORTANT]
190
+ > You **MUST** turn ON the following intents, otherwise Discord will silently drop message text and your bot will fail to process chat commands:
191
+ - โœ… **MESSAGE CONTENT INTENT** *(Required to read messages and slash prompts)*
192
+ - โœ… **SERVER MEMBERS INTENT** *(Recommended for user whitelist lookups)*
193
+ 5. Click **Save Changes**.
194
+
195
+ ---
196
+
197
+ ### Step 2: Invite the Bot to Your Server
198
+
199
+ 1. In the left navigation, go to **OAuth2** โ†’ **OAuth2 URL Generator**.
200
+ 2. Under **Scopes**, select:
201
+ - โœ… `bot`
202
+ - โœ… `applications.commands` *(Required for native slash commands `/`)*
203
+ 3. Under **Bot Permissions**, select:
204
+ - โœ… `Send Messages`
205
+ - โœ… `Create Public Threads`
206
+ - โœ… `Send Messages in Threads`
207
+ - โœ… `Embed Links`
208
+ - โœ… `Attach Files`
209
+ - โœ… `Read Message History`
210
+ - โœ… `Use Slash Commands`
211
+ 4. Copy the generated **OAuth2 URL** at the bottom, paste it into your browser, choose your server, and click **Authorize**.
212
+
213
+ ---
214
+
215
+ ### Step 3: Retrieve Channel ID & User ID
216
+
217
+ 1. In Discord, go to **User Settings** (โš™๏ธ bottom left) โ†’ **Advanced** โ†’ turn **ON** **Developer Mode**.
218
+ 2. Right-click the channel where you want Dis-Gravity to chat โ†’ click **Copy Channel ID**.
219
+ 3. Right-click your own avatar/profile in the chat โ†’ click **Copy User ID** (used for security access control).
220
+
221
+ ---
222
+
223
+ ### Step 4: Configure Dis-Gravity in Your IDE
224
+
225
+ 1. Open VS Code or Antigravity IDE with the Dis-Gravity extension installed.
226
+ 2. Click the **Discord** icon in the Activity Bar (left sidebar) to open Dis-Gravity settings.
227
+ 3. Fill in the fields:
228
+ - **Bot Token**: Paste the token from Step 1.
229
+ - **Channel ID**: Paste the Channel ID from Step 3.
230
+ - **Allowed Users**: Paste your Discord User ID from Step 3.
231
+ - **Agent Provider**: Choose `auto` (or `copilot`, `antigravity`, `cursor`, `windsurf`, `cli`).
232
+ 4. Click **Save Settings** or reload your window (`Developer: Reload Window`). Both status dots will turn green:
233
+ - ๐ŸŸข **Discord: Connected**
234
+ - ๐ŸŸข **CDP / Agent: Connected**
235
+
236
+ </details>
237
+
238
+ ---
239
+
240
+ ## Connecting Your Specific IDE
241
+
242
+ ### 1. Visual Studio Code & GitHub Copilot (Zero Port Required)
243
+
244
+ If you are using standard Visual Studio Code with GitHub Copilot Chat:
245
+ 1. In settings, set `antigravity-discord.agentProvider` to `"copilot"`.
246
+ 2. **Zero debug port is needed!** Dis-Gravity communicates directly via VS Code's native Language Model API (`vscode.lm`).
247
+ 3. Dis-Gravity automatically activates an **autonomous ReAct tool loop** supporting `view_file`, `edit_file`, `run_command`, and `git_diff` with live step streaming and Discord confirmation buttons (`[ ๐ŸŸข Allow ]`, `[ ๐Ÿ”ด Deny ]`) for sensitive changes.
248
+
249
+ ---
250
+
251
+ ### 2. Google Antigravity, Cursor AI & Windsurf (Port 9000)
252
+
253
+ These IDEs drive agent chat via Chrome DevTools Protocol (CDP) and require launching the application with `--remote-debugging-port=9000`.
254
+
255
+ #### **Windows**
256
+ 1. Right-click your desktop shortcut for Antigravity / Cursor / Windsurf โ†’ select **Properties**.
257
+ 2. In the **Target** box, append ` --remote-debugging-port=9000` to the end of the path:
258
+ ```text
259
+ "C:\Users\...\AppData\Local\Programs\Antigravity\Antigravity.exe" --remote-debugging-port=9000
260
+ ```
261
+ 3. Click **Apply** and launch the IDE from this shortcut.
262
+
263
+ #### **macOS**
264
+ Launch via Terminal or save a shell script / Automator app:
265
+ ```bash
266
+ # Google Antigravity
267
+ open -a "Google Antigravity" --args --remote-debugging-port=9000
268
+
269
+ # Cursor
270
+ open -a "Cursor" --args --remote-debugging-port=9000
271
+
272
+ # Windsurf
273
+ open -a "Windsurf" --args --remote-debugging-port=9000
274
+ ```
275
+
276
+ #### **Linux**
277
+ ```bash
278
+ antigravity --remote-debugging-port=9000
279
+ # or cursor --remote-debugging-port=9000
280
+ ```
281
+
282
+ ---
283
+
284
+ ### 3. JetBrains, Neovim & Headless Servers (Standalone CLI Daemon)
285
+
286
+ Dis-Gravity includes a standalone, editor-agnostic daemon that runs in any terminal or remote SSH session:
287
+
288
+ ```bash
289
+ # Run instantly with npx:
290
+ npx dis-gravity --token="YOUR_BOT_TOKEN" --channel="CHANNEL_ID" --workspace="." --allowed-users="YOUR_USER_ID"
291
+
292
+ # Or run globally via npm:
293
+ npm install -g dis-gravity
294
+ dis-gravity --token="YOUR_BOT_TOKEN" --channel="CHANNEL_ID" --provider="cli"
295
+ ```
296
+
297
+ **CLI Daemon Flags:**
298
+ - `--token`, `-t`: Discord Bot Token (or `DISCORD_BOT_TOKEN` env var)
299
+ - `--channel`, `-c`: Discord Channel ID (or `DISCORD_CHANNEL_ID` env var)
300
+ - `--guild`, `-g`: Discord Guild ID for instant slash command registration
301
+ - `--allowed-users`, `-u`: Comma-separated Discord User IDs allowed to issue commands
302
+ - `--provider`, `-p`: AI engine (`cli`, `antigravity`, `cursor`, `windsurf`)
303
+ - `--workspace`, `-w`: Path to root workspace directory (defaults to current working directory)
304
+ - `--table-style`: Tabular style (`image`, `cards`, `rounded`, `boxed`, `ascii`)
305
+ - `--port`: Remote debugging CDP port (defaults to `9000`)
306
+
307
+ ---
308
+
309
+ ### 4. Claude Desktop & Claude Code (Model Context Protocol / MCP)
310
+
311
+ Dis-Gravity provides a native MCP server (`mcp/server.js`) and Anthropic MCP bundle (`.mcpb` / `.dxt`). It allows Claude Desktop and Claude Code agents to proactively request approval directly on mobile Discord before running critical tools, as well as sending notifications to your channel:
312
+
313
+ - **`ask_discord_approval`**: Sends an interactive Discord embed with `[ ๐ŸŸข Allow ]` and `[ ๐Ÿ”ด Deny ]` buttons directly to your phone. Claude waits in real-time until you tap a button or timeout expires.
314
+ - **`notify_discord`**: Streams status updates, alerts, or completed agent summaries to your Discord channel.
315
+ - **`get_discord_bridge_status`**: Inspects Discord gateway latency, connected channel ID, and active permissions.
316
+
317
+ **Using with Claude Desktop:**
318
+ Double-click `dis-gravity-1.2.0.mcpb` to install the extension automatically, or configure your `claude_desktop_config.json`:
319
+ ```json
320
+ {
321
+ "mcpServers": {
322
+ "dis-gravity": {
323
+ "command": "node",
324
+ "args": ["/path/to/Dis-Gravity/mcp/server.js"],
325
+ "env": {
326
+ "DISCORD_BOT_TOKEN": "YOUR_BOT_TOKEN",
327
+ "DISCORD_CHANNEL_ID": "YOUR_CHANNEL_ID",
328
+ "ALLOWED_USERS": "YOUR_DISCORD_USER_ID"
329
+ }
330
+ }
331
+ }
332
+ }
333
+ ```
334
+
335
+ ---
336
+
337
+ ## ๐Ÿ›ก๏ธ Security Best Practices & Architecture (`allowedUsers`)
338
+
339
+ > [!CAUTION]
340
+ > **Never connect Dis-Gravity to a public or multi-user Discord channel without configuring `allowedUsers`!**
341
+
342
+ Dis-Gravity is engineered for high-security, privacy-conscious developer workflows with a **zero-inbound-ports threat model**:
343
+
344
+ - **๐Ÿ”’ Zero Inbound Listening Ports:** Operates 100% via outbound TLS WebSocket connections (`wss://gateway.discord.gg`). No open ports on your router, no port forwarding, no ngrok tunnels, and zero public IP exposure.
345
+ - **๐Ÿ›‘ Strict Fail-Closed Authorization:** Every command, shortcut, and button click is verified against `allowedUsers` (`isUserAllowed`). Unlisted users are rejected immediately with an audit log.
346
+ - **๐ŸŒ Localhost-Only CDP Isolation:** Chrome DevTools Protocol connections for Google Antigravity, Cursor AI, and Windsurf are strictly bound to local loopback (`127.0.0.1:9000`) and never exposed to the network.
347
+ - **๐Ÿ“‚ Path Traversal Containment:** All filesystem operations (`/cat`, `/open`, `/diff`, `/tree`) pass through `safeResolveWorkspacePath` to prevent directory traversal outside workspace boundaries.
348
+ - **๐Ÿ” Local Credential Storage:** Bot tokens are stored locally in `~/.dis-gravity/config.json` with restricted file permissions (`0o600`). Dis-Gravity transmits zero telemetry to third-party servers.
349
+
350
+ For comprehensive threat model details, comparative security analysis, and vulnerability disclosure policies, see **[SECURITY.md](SECURITY.md)**.
351
+
352
+ 1. **Always configure `allowedUsers`**: Enter your Discord User ID (e.g. `123456789012345678`). Multiple authorized users can be separated by commas (`123456789,987654321`). Unauthorized users and unconfigured environments receive an explicit rejection notice.
353
+ 2. **Use a Private Channel**: Dedicate a private Discord text channel accessible only to you and the bot.
354
+ 3. **Interactive Approvals**: File modifications and terminal executions in Copilot / CLI modes prompt you with interactive `[ ๐ŸŸข Allow ]` and `[ ๐Ÿ”ด Deny ]` buttons before changes take effect.
355
+
356
+ ---
357
+
358
+ ## ๐ŸŒŸ Key Features
359
+
360
+ ### ๐Ÿ–ผ๏ธ High-Resolution Visual Table Image Cards (`/table`, `!table`)
361
+ Discord mobile apps suffer from a notorious line-wrapping bug that scrambles monospaced ASCII tables into unreadable text blocks. Dis-Gravity dynamically converts Markdown tables into **high-resolution 2x retina PNG cards** rendered natively in Discord messages, complete with dark theme styling, zebra rows, bold headers, colored status chips (`#57f287` green, `#fee75c` yellow, `#ed4245` red), full-color emojis, and pinch-to-zoom support. Features headless browser fallback (`msedge`/`chrome`) for environments without CDP ports.
362
+
363
+ ### ๐ŸŽฎ 1-Click Command Palette (`/palette`, `/action`)
364
+ Execute any of VS Code's 1,000+ commands remotely from your phone with 1 tap. Pre-built buttons across Developer (Reload Window, Restart Extension Host), Terminal (New, Toggle, Kill), Files (Save All, Close All), and Git (Sync, Pull, Push), plus live autocomplete search for any IDE command.
365
+
366
+ ### ๐Ÿ’ป Remote Shell & Git Suite (`/sh`, `/git`, `/diff`)
367
+ Execute terminal commands in your workspace root (`/sh npm test`), inspect syntax-highlighted stdout/stderr with exit codes and execution duration, review git status (`/git status`), browse colored unified diffs (`/diff`), stage all changes, and export `.patch` files.
368
+
369
+ ### ๐Ÿ“ Remote File Explorer & Slicer (`/cat`, `/tree`, `/open`)
370
+ Read files with syntax highlighting and line numbers (`/cat src/index.js 1 50`), inspect visual directory trees (`/tree src 2`), or open files directly in your desktop IDE editor tabs remotely (`/open README.md`).
371
+
372
+ ### ๐Ÿ“ฆ Artifact Discovery & Download (`/artifact`, `/get`)
373
+ Browse and download AI-generated walkthroughs, architectural plans, patch files, diagrams, or workspace assets directly in Discord with interactive dropdown menus and path-traversal security protection.
374
+
375
+ ### โณ Live Step Streaming & Observability
376
+ Replaces static wait timers with real-time DOM step updates: `โณ Working (18s): ๐Ÿ” Viewing file package.json`, `โšก Running command npm test`, `๐Ÿ’ญ Thinking...`.
377
+
378
+ ### ๐Ÿ–ฅ๏ธ Host Health & Workspace Dashboard (`/info`, `/workspace`)
379
+ Check active workspace, git branch, dirty file count, open editor tabs, host OS, CPU load, memory utilization, and uptime directly from chat.
380
+
381
+ ### โฐ Scheduled & Cron Prompts (`/schedule`, `!schedule`)
382
+ Schedule one-shot delayed prompts (`15m`, `2h`, `in 30m`), recurring intervals (`every 30m`, `@hourly`, `@daily`), or standard 5-field cron expressions (`0 9 * * 1-5`, `*/15 * * * *`) directly from Discord. Automatically triggers AI prompts or `/sh` commands at the scheduled time with 1-tap `[ ๐Ÿ›‘ Cancel ]` buttons.
383
+
384
+ ### ๐Ÿงต Thread-per-Session & Multi-Workspace Mapping (`/bind`, `/threads`)
385
+ Bind individual Discord threads to dedicated local project directories (`/bind workspace:/path/to/repo`) so `/sh`, `/git`, `/diff`, `/cat`, `/tree`, and AI prompts inside each thread execute isolated against that thread's bound workspace without colliding.
386
+
387
+ ### ๐ŸŽ™๏ธ Mobile Voice Messages & Voicecoding
388
+ Send a native Discord mobile voice message (or audio attachment `.ogg`, `.mp3`, `.wav`, `.m4a`) in your channel or thread. Dis-Gravity automatically transcribes your voice prompt using OpenAI/Groq Whisper API (`OPENAI_API_KEY` / `GROQ_API_KEY` / `antigravity-discord.whisperApiKey`), local Whisper CLI (`whisper-cli` / `whisper`), or Windows native `System.Speech`, posts the transcription, and executes the prompt or command hands-free.
389
+
390
+ ---
391
+
392
+ ## โŒจ๏ธ Slash Commands & Text Shortcuts
393
+
394
+ | Command | Chat Shortcut | Description |
395
+ |---|---|---|
396
+ | `/home` | `!home`, `!dash` | Dis-Gravity Mission Control Cockpit (1-tap remote dashboard) |
397
+ | `/plan <prompt>` | `!plan <prompt>` | Activates Planning Mode with auto-thread isolation & chip |
398
+ | `/goal <prompt>` | `!goal <prompt>` | Activates Goal Mode with autonomous execution instructions |
399
+ | `/grill <prompt>` | `!grill <prompt>` | Activates Alignment Interview mode |
400
+ | `/sh <cmd>` | `!sh <cmd>` or `$ <cmd>` | Execute shell command with contextual follow-up action buttons |
401
+ | `/git [status\|diff\|log]` | `!git [subcommand]` | Remote Git repository management |
402
+ | `/diff [file] [staged]` | `!diff` | 2x Retina Visual Diff card with 1-tap Stage/Push/Review |
403
+ | `/cat <path> [start] [end]` | `!cat <path>` | Read file contents with syntax highlighting |
404
+ | `/tree [dir] [depth]` | `!tree` | Visual workspace directory tree |
405
+ | `/open <path>` | `!open <path>` | Open file in active desktop IDE editor tab |
406
+ | `/palette [category]` | `!palette` | 1-click command palette dashboard |
407
+ | `/action <command>` | `!run <id>` | Trigger any IDE command with live autocomplete |
408
+ | `/info` | `!info`, `!workspace` | Host hardware, CPU, memory & workspace health |
409
+ | `/status` | `!status` | Bridge connection status, model & queue health |
410
+ | `/models` | `!models` | Interactive AI model selector dropdown |
411
+ | `/effort <level>` | `!effort <level>`, `!high` | Reasoning effort switcher (Low, Medium, High) |
412
+ | `/table [style]` | `!table [style]` | Tabular style switcher (`image`, `cards`, `rounded`, `boxed`, `ascii`) |
413
+ | `/artifact [name]` | `!artifact` | Browse and download AI-generated artifacts |
414
+ | `/get <path>` | `!get <path>` | Download file from workspace or brain directory |
415
+ | `/stop` | `!stop`, `cancel` | Emergency abort running AI generation |
416
+ | `/new` | `!new` | Clear conversation history and reset context |
417
+ | `/schedule <when> [prompt]` | `!schedule <spec> \| <prompt>` | Schedule one-shot delays (`15m`), intervals (`every 1h`), or cron tasks (`0 9 * * 1-5`) |
418
+ | `/bind [workspace]` | `!bind [path\|unbind]` | Bind current Discord thread to a dedicated project directory |
419
+ | `/threads` | `!threads` | List all active Discord thread-to-workspace bindings |
420
+ | `/help` | `!help` | Display command help guide |
421
+
422
+ ---
423
+
424
+ ## โš™๏ธ Configuration Reference
425
+
426
+ Configure via VS Code Settings GUI or in `.vscode/settings.json`:
427
+
428
+ ```json
429
+ {
430
+ "antigravity-discord.botToken": "YOUR_DISCORD_BOT_TOKEN",
431
+ "antigravity-discord.channelId": "YOUR_DISCORD_CHANNEL_ID",
432
+ "antigravity-discord.allowedUsers": "123456789012345678",
433
+ "antigravity-discord.agentProvider": "auto",
434
+ "antigravity-discord.tableStyle": "image",
435
+ "antigravity-discord.autoAttachTableImages": true,
436
+ "antigravity-discord.debugPort": 9000,
437
+ "antigravity-discord.cursorPort": 9000,
438
+ "antigravity-discord.windsurfPort": 9000,
439
+ "antigravity-discord.cliAgentPath": "auto",
440
+ "antigravity-discord.enableCopilotReAct": true,
441
+ "antigravity-discord.copilotMaxToolSteps": 10,
442
+ "antigravity-discord.renderVisualDiffs": true,
443
+ "antigravity-discord.autoThreadTasks": true,
444
+ "antigravity-discord.voiceConfirmationGuard": true,
445
+ "antigravity-discord.urgentMentionOnApproval": true
446
+ }
447
+ ```
448
+
449
+ ---
450
+
451
+ ## โ“ Troubleshooting & FAQ
452
+
453
+ #### 1. "The bot is online in Discord, but it doesn't respond to messages."
454
+ - **Root Cause**: The **Message Content Intent** is disabled in the Discord Developer Portal.
455
+ - **Fix**: Go to [Discord Developer Portal](https://discord.com/developers/applications) โ†’ select your Application โ†’ **Bot** tab โ†’ under **Privileged Gateway Intents**, turn **ON** **MESSAGE CONTENT INTENT** โ†’ click **Save Changes**.
456
+
457
+ #### 2. "Bridge Status shows ๐Ÿ”ด Disconnected."
458
+ - **If using Antigravity, Cursor, or Windsurf**: Launch the IDE with `--remote-debugging-port=9000` (see instructions [above](#2-google-antigravity-cursor-ai--windsurf-port-9000)).
459
+ - **If using standard VS Code**: Change `antigravity-discord.agentProvider` to `"copilot"` in settings. It connects natively via `vscode.lm` with zero ports required.
460
+
461
+ #### 3. "I received `โ›” Unauthorized: Your Discord User ID is not on the whitelist`."
462
+ - Right-click your profile in Discord โ†’ click **Copy User ID**. Open Dis-Gravity settings in the IDE and paste your User ID into **Allowed Users**.
463
+
464
+ #### 4. "My table columns are wrapping into a jumble on my mobile phone."
465
+ - Run `/table image` or `!table image` in Discord. Dis-Gravity will automatically render tables into high-DPI visual PNG image cards that display cleanly without text wrapping on any screen size.
466
+
467
+ ---
468
+
469
+ ## ๐Ÿ“„ License
470
+
471
+ MIT ยฉ [Anon King](https://gitlab.com/rethinakumarsambath8/dis-gravity)