nomoreide 0.1.5 → 0.1.7
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/LICENSE +121 -0
- package/README.md +295 -152
- package/dist/web/client/assets/index-74dn7UhF.js +12 -0
- package/dist/web/client/assets/index-Dl1RVIBV.css +1 -0
- package/dist/web/client/index.html +2 -2
- package/dist/web/server.js +11 -0
- package/dist/web/server.js.map +1 -1
- package/dist/web/service-tester.d.ts +14 -0
- package/dist/web/service-tester.js +102 -0
- package/dist/web/service-tester.js.map +1 -0
- package/package.json +2 -2
- package/dist/web/client/assets/index-6wvMoetQ.css +0 -1
- package/dist/web/client/assets/index-CpyHnl3b.js +0 -11
package/README.md
CHANGED
|
@@ -1,83 +1,93 @@
|
|
|
1
|
-
|
|
1
|
+
<div align="center">
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<img src="assets/nomoreide-logo.png" alt="NoMoreIDE Logo" width="120" />
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
# NoMoreIDE
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
**The AI-native terminal workbench for the post-IDE development loop.**
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
[](https://www.npmjs.com/package/nomoreide)
|
|
10
|
+
[](https://www.npmjs.com/package/nomoreide)
|
|
11
|
+
[](https://github.com/Rorogogogo/nomoreide/stargazers)
|
|
12
|
+
[](LICENSE)
|
|
13
|
+
[](https://nodejs.org)
|
|
14
|
+
[](https://modelcontextprotocol.io)
|
|
10
15
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
npx -y nomoreide
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
Install globally:
|
|
16
|
+
Give your coding agents and yourself a **shared local control surface** for services, ports, logs, Git review, and MCP workflows — no IDE required.
|
|
18
17
|
|
|
19
|
-
|
|
20
|
-
npm install -g nomoreide
|
|
21
|
-
```
|
|
18
|
+
[Quick Start](#quick-start) · [MCP Setup](#-connect-your-ai-agent) · [CLI Reference](#cli) · [MCP Tools](#mcp-tools) · [Architecture](#architecture)
|
|
22
19
|
|
|
23
|
-
|
|
20
|
+
</div>
|
|
24
21
|
|
|
25
|
-
|
|
26
|
-
npm install
|
|
27
|
-
npm run build
|
|
28
|
-
```
|
|
22
|
+
---
|
|
29
23
|
|
|
30
|
-
##
|
|
24
|
+
## What Is NoMoreIDE?
|
|
31
25
|
|
|
32
|
-
|
|
26
|
+
NoMoreIDE is a lightweight process manager, Git reviewer, log aggregator, and MCP server — all in one `npx` command. It gives AI coding agents (Claude Code, Codex CLI, Gemini CLI, and others) a safe, structured window into your running dev environment through the **Model Context Protocol (MCP)**, while also providing a terminal UI and a local React web dashboard for humans.
|
|
33
27
|
|
|
34
|
-
```bash
|
|
35
|
-
nomoreide
|
|
36
28
|
```
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
29
|
+
┌──────────────────────────────────────────────────────┐
|
|
30
|
+
│ Your Project │
|
|
31
|
+
│ │
|
|
32
|
+
│ Claude Code / Codex CLI / Gemini CLI │
|
|
33
|
+
│ │ │
|
|
34
|
+
│ MCP (stdio) │
|
|
35
|
+
│ │ │
|
|
36
|
+
│ ┌───────▼────────┐ ┌──────────────────────┐ │
|
|
37
|
+
│ │ NoMoreIDE MCP │◄──►│ Process Manager │ │
|
|
38
|
+
│ │ Server │ │ Log Store │ │
|
|
39
|
+
│ └───────┬────────┘ │ Git Manager │ │
|
|
40
|
+
│ │ │ Config Store │ │
|
|
41
|
+
│ HTTP API └──────────────────────┘ │
|
|
42
|
+
│ │ │
|
|
43
|
+
│ ┌───────▼──────────────────────────┐ │
|
|
44
|
+
│ │ Web UI (localhost:4317) │ │
|
|
45
|
+
│ │ Terminal UI (nomoreide tui) │ │
|
|
46
|
+
│ └──────────────────────────────────┘ │
|
|
47
|
+
└──────────────────────────────────────────────────────┘
|
|
42
48
|
```
|
|
43
49
|
|
|
44
|
-
|
|
50
|
+
---
|
|
45
51
|
|
|
46
|
-
|
|
47
|
-
nomoreide tui
|
|
48
|
-
```
|
|
52
|
+
## Connect Your AI Agent
|
|
49
53
|
|
|
50
|
-
|
|
54
|
+
NoMoreIDE runs as a **local stdio MCP server**. Pick your agent CLI and paste the one-liner — that's it.
|
|
51
55
|
|
|
52
|
-
|
|
53
|
-
nomoreide web
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
The web UI listens on `http://127.0.0.1:4317` by default. Use another port with:
|
|
56
|
+
### Claude Code
|
|
57
57
|
|
|
58
58
|
```bash
|
|
59
|
-
nomoreide
|
|
59
|
+
claude mcp add --transport stdio nomoreide -- npx -y nomoreide
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
> Want to share the config with your whole team? Use project scope to commit a `.mcp.json`:
|
|
63
|
+
>
|
|
64
|
+
> ```bash
|
|
65
|
+
> claude mcp add --transport stdio --scope project nomoreide -- npx -y nomoreide
|
|
66
|
+
> ```
|
|
65
67
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
### Claude Code
|
|
68
|
+
Then confirm inside Claude Code:
|
|
69
69
|
|
|
70
|
-
```
|
|
71
|
-
|
|
70
|
+
```
|
|
71
|
+
/mcp
|
|
72
72
|
```
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
<details>
|
|
75
|
+
<summary>Manual config (<code>.mcp.json</code> or Claude settings)</summary>
|
|
75
76
|
|
|
76
|
-
```
|
|
77
|
-
|
|
77
|
+
```json
|
|
78
|
+
{
|
|
79
|
+
"mcpServers": {
|
|
80
|
+
"nomoreide": {
|
|
81
|
+
"command": "npx",
|
|
82
|
+
"args": ["-y", "nomoreide"]
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
78
86
|
```
|
|
79
87
|
|
|
80
|
-
|
|
88
|
+
</details>
|
|
89
|
+
|
|
90
|
+
---
|
|
81
91
|
|
|
82
92
|
### Codex CLI
|
|
83
93
|
|
|
@@ -85,19 +95,28 @@ Inside Claude Code, run `/mcp` to confirm the server is connected.
|
|
|
85
95
|
codex mcp add nomoreide -- npx -y nomoreide
|
|
86
96
|
```
|
|
87
97
|
|
|
88
|
-
|
|
98
|
+
<details>
|
|
99
|
+
<summary>Manual config (<code>~/.codex/config.toml</code>)</summary>
|
|
89
100
|
|
|
90
101
|
```toml
|
|
91
102
|
[mcp_servers.nomoreide]
|
|
92
103
|
command = "npx"
|
|
93
|
-
args
|
|
104
|
+
args = ["-y", "nomoreide"]
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
</details>
|
|
108
|
+
|
|
109
|
+
Then confirm inside Codex:
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
/mcp
|
|
94
113
|
```
|
|
95
114
|
|
|
96
|
-
|
|
115
|
+
---
|
|
97
116
|
|
|
98
117
|
### Gemini CLI
|
|
99
118
|
|
|
100
|
-
|
|
119
|
+
Open your Gemini CLI settings file (`~/.gemini/settings.json` or the path shown by `gemini config`) and add:
|
|
101
120
|
|
|
102
121
|
```json
|
|
103
122
|
{
|
|
@@ -110,144 +129,243 @@ Add NoMoreIDE to your Gemini CLI `settings.json`:
|
|
|
110
129
|
}
|
|
111
130
|
```
|
|
112
131
|
|
|
113
|
-
Restart Gemini CLI, then
|
|
132
|
+
Restart Gemini CLI, then verify:
|
|
114
133
|
|
|
115
|
-
|
|
134
|
+
```
|
|
135
|
+
/mcp
|
|
136
|
+
```
|
|
116
137
|
|
|
117
|
-
|
|
138
|
+
---
|
|
118
139
|
|
|
119
|
-
|
|
120
|
-
nomoreide add service backend --command "npm run dev" --cwd /absolute/path/to/backend --port 3001
|
|
121
|
-
```
|
|
140
|
+
### Local Checkout (any agent)
|
|
122
141
|
|
|
123
|
-
|
|
142
|
+
If you prefer to point agents at a locally built binary instead of the published npm package:
|
|
124
143
|
|
|
125
|
-
```
|
|
126
|
-
|
|
144
|
+
```json
|
|
145
|
+
{
|
|
146
|
+
"mcpServers": {
|
|
147
|
+
"nomoreide": {
|
|
148
|
+
"command": "node",
|
|
149
|
+
"args": ["/absolute/path/to/nomoreide/dist/index.js"]
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
127
153
|
```
|
|
128
154
|
|
|
129
|
-
|
|
155
|
+
---
|
|
130
156
|
|
|
131
|
-
|
|
132
|
-
nomoreide list
|
|
133
|
-
```
|
|
157
|
+
## Quick Start
|
|
134
158
|
|
|
135
|
-
|
|
159
|
+
Run without installing:
|
|
136
160
|
|
|
137
161
|
```bash
|
|
138
|
-
|
|
139
|
-
nomoreide stop backend
|
|
140
|
-
nomoreide restart backend
|
|
162
|
+
npx -y nomoreide
|
|
141
163
|
```
|
|
142
164
|
|
|
143
|
-
|
|
165
|
+
Install globally:
|
|
144
166
|
|
|
145
167
|
```bash
|
|
146
|
-
|
|
147
|
-
nomoreide stop full-stack
|
|
168
|
+
npm install -g nomoreide
|
|
148
169
|
```
|
|
149
170
|
|
|
150
|
-
|
|
171
|
+
Build from source:
|
|
151
172
|
|
|
152
173
|
```bash
|
|
153
|
-
|
|
174
|
+
git clone https://github.com/Rorogogogo/nomoreide.git
|
|
175
|
+
cd nomoreide
|
|
176
|
+
npm install
|
|
177
|
+
npm run build
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Architecture
|
|
183
|
+
|
|
184
|
+
```mermaid
|
|
185
|
+
graph TD
|
|
186
|
+
subgraph Agent["AI Agent (Claude / Codex / Gemini)"]
|
|
187
|
+
A[Coding Agent CLI]
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
subgraph NoMoreIDE
|
|
191
|
+
MCP[MCP Server<br/>stdio transport]
|
|
192
|
+
PM[Process Manager]
|
|
193
|
+
GM[Git Manager]
|
|
194
|
+
LS[Log Store]
|
|
195
|
+
CS[Config Store<br/>nomoreide.config.json]
|
|
196
|
+
WS[Web Server<br/>:4317]
|
|
197
|
+
TUI[Terminal UI]
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
subgraph Services["Your Dev Services"]
|
|
201
|
+
S1[backend :3001]
|
|
202
|
+
S2[frontend :5173]
|
|
203
|
+
S3[db :5432]
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
A -- MCP stdio --> MCP
|
|
207
|
+
MCP --> PM
|
|
208
|
+
MCP --> GM
|
|
209
|
+
MCP --> LS
|
|
210
|
+
MCP --> CS
|
|
211
|
+
PM --> S1
|
|
212
|
+
PM --> S2
|
|
213
|
+
PM --> S3
|
|
214
|
+
LS --> PM
|
|
215
|
+
WS --> PM
|
|
216
|
+
WS --> GM
|
|
217
|
+
WS --> LS
|
|
218
|
+
TUI --> PM
|
|
219
|
+
TUI --> LS
|
|
154
220
|
```
|
|
155
221
|
|
|
156
|
-
|
|
222
|
+
---
|
|
157
223
|
|
|
158
|
-
|
|
224
|
+
## Feature Overview
|
|
159
225
|
|
|
160
|
-
|
|
226
|
+
| Feature | CLI | TUI | Web UI | MCP |
|
|
227
|
+
|---|:---:|:---:|:---:|:---:|
|
|
228
|
+
| Start / stop / restart services | ✓ | ✓ | ✓ | ✓ |
|
|
229
|
+
| Bundle orchestration | ✓ | | ✓ | ✓ |
|
|
230
|
+
| Port conflict detection | | | ✓ | ✓ |
|
|
231
|
+
| Real-time log streaming | ✓ | ✓ | ✓ | ✓ |
|
|
232
|
+
| Git status & diff | ✓ | | ✓ | ✓ |
|
|
233
|
+
| Stage / unstage / commit | ✓ | | ✓ | ✓ |
|
|
234
|
+
| Branch management | ✓ | | ✓ | ✓ |
|
|
235
|
+
| Safe Git (no force-push, no reset) | ✓ | ✓ | ✓ | ✓ |
|
|
161
236
|
|
|
162
|
-
|
|
163
|
-
nomoreide git status --cwd /absolute/path/to/repo
|
|
164
|
-
```
|
|
237
|
+
---
|
|
165
238
|
|
|
166
|
-
|
|
239
|
+
## Running the Interfaces
|
|
240
|
+
|
|
241
|
+
### MCP Server (default)
|
|
167
242
|
|
|
168
243
|
```bash
|
|
169
|
-
nomoreide
|
|
170
|
-
|
|
244
|
+
nomoreide
|
|
245
|
+
# or from source:
|
|
246
|
+
npm run dev
|
|
171
247
|
```
|
|
172
248
|
|
|
173
|
-
|
|
249
|
+
### Terminal UI
|
|
174
250
|
|
|
175
251
|
```bash
|
|
176
|
-
nomoreide
|
|
252
|
+
nomoreide tui
|
|
177
253
|
```
|
|
178
254
|
|
|
179
|
-
|
|
255
|
+
### Web Dashboard
|
|
180
256
|
|
|
181
257
|
```bash
|
|
182
|
-
nomoreide
|
|
183
|
-
|
|
258
|
+
nomoreide web
|
|
259
|
+
# custom port:
|
|
260
|
+
nomoreide web --port=4320
|
|
184
261
|
```
|
|
185
262
|
|
|
186
|
-
|
|
263
|
+
The web dashboard is available at `http://127.0.0.1:4317` by default.
|
|
187
264
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## CLI
|
|
191
268
|
|
|
192
|
-
|
|
269
|
+
### Services
|
|
193
270
|
|
|
194
271
|
```bash
|
|
195
|
-
|
|
196
|
-
|
|
272
|
+
# Register a service
|
|
273
|
+
nomoreide add service backend \
|
|
274
|
+
--command "npm run dev" \
|
|
275
|
+
--cwd /absolute/path/to/backend \
|
|
276
|
+
--port 3001
|
|
197
277
|
|
|
198
|
-
|
|
278
|
+
# Register a bundle (ordered group of services)
|
|
279
|
+
nomoreide add bundle full-stack db backend frontend
|
|
199
280
|
|
|
200
|
-
|
|
201
|
-
nomoreide
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
nomoreide
|
|
281
|
+
# List everything
|
|
282
|
+
nomoreide list
|
|
283
|
+
|
|
284
|
+
# Lifecycle
|
|
285
|
+
nomoreide start backend
|
|
286
|
+
nomoreide stop backend
|
|
287
|
+
nomoreide restart backend
|
|
288
|
+
nomoreide start full-stack
|
|
289
|
+
nomoreide stop full-stack
|
|
290
|
+
|
|
291
|
+
# Logs (in-memory, current process)
|
|
292
|
+
nomoreide logs backend
|
|
205
293
|
```
|
|
206
294
|
|
|
207
|
-
|
|
295
|
+
### Git
|
|
208
296
|
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
297
|
+
NoMoreIDE exposes **read-safe** Git operations only — no hard reset, no clean, no force push, no branch deletion.
|
|
298
|
+
|
|
299
|
+
```bash
|
|
300
|
+
# Status & diff
|
|
301
|
+
nomoreide git status --cwd /path/to/repo
|
|
302
|
+
nomoreide git diff --cwd /path/to/repo
|
|
303
|
+
|
|
304
|
+
# Staging & committing
|
|
305
|
+
nomoreide git stage --cwd /path/to/repo src/index.ts README.md
|
|
306
|
+
nomoreide git unstage --cwd /path/to/repo src/index.ts
|
|
307
|
+
nomoreide git commit --cwd /path/to/repo --message "feat: add dashboard"
|
|
308
|
+
|
|
309
|
+
# History
|
|
310
|
+
nomoreide git log --cwd /path/to/repo
|
|
311
|
+
|
|
312
|
+
# Branches
|
|
313
|
+
nomoreide git branch --cwd /path/to/repo
|
|
314
|
+
nomoreide git fetch --cwd /path/to/repo
|
|
315
|
+
nomoreide git switch --cwd /path/to/repo feature/my-work
|
|
316
|
+
nomoreide git create-branch --cwd /path/to/repo feature/new-work
|
|
317
|
+
|
|
318
|
+
# Register repos for the web UI
|
|
319
|
+
nomoreide git add-repo app --path /path/to/repo
|
|
320
|
+
nomoreide git select-repo app
|
|
218
321
|
```
|
|
219
322
|
|
|
220
|
-
|
|
323
|
+
---
|
|
221
324
|
|
|
222
325
|
## MCP Tools
|
|
223
326
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
327
|
+
All tools are prefixed with `nomoreide_` and are available to any connected MCP client.
|
|
328
|
+
|
|
329
|
+
### Service Tools
|
|
330
|
+
|
|
331
|
+
| Tool | Description |
|
|
332
|
+
|---|---|
|
|
333
|
+
| `nomoreide_list_services` | List all registered services and bundles |
|
|
334
|
+
| `nomoreide_register_service` | Register a new service |
|
|
335
|
+
| `nomoreide_start_service` | Start a registered service |
|
|
336
|
+
| `nomoreide_stop_service` | Stop a running service |
|
|
337
|
+
| `nomoreide_restart_service` | Restart a running service |
|
|
338
|
+
| `nomoreide_read_logs` | Read recent in-memory logs for a service |
|
|
339
|
+
| `nomoreide_register_bundle` | Register a bundle of services |
|
|
340
|
+
| `nomoreide_start_bundle` | Start all services in a bundle |
|
|
341
|
+
| `nomoreide_stop_bundle` | Stop all services in a bundle |
|
|
342
|
+
| `nomoreide_status` | Overall server status |
|
|
343
|
+
| `nomoreide_open_ui` | Open the local web UI |
|
|
344
|
+
| `nomoreide_close_ui` | Close the local web UI |
|
|
345
|
+
|
|
346
|
+
### Git Tools
|
|
347
|
+
|
|
348
|
+
| Tool | Description |
|
|
349
|
+
|---|---|
|
|
350
|
+
| `nomoreide_git_status` | Show working tree status |
|
|
351
|
+
| `nomoreide_git_diff` | Show unstaged diff |
|
|
352
|
+
| `nomoreide_git_staged_diff` | Show staged diff |
|
|
353
|
+
| `nomoreide_git_log` | Show recent commits |
|
|
354
|
+
| `nomoreide_git_branches` | List branches |
|
|
355
|
+
| `nomoreide_git_fetch` | Fetch from remote |
|
|
356
|
+
| `nomoreide_git_switch_branch` | Switch to a branch |
|
|
357
|
+
| `nomoreide_git_create_branch` | Create a new branch |
|
|
358
|
+
| `nomoreide_git_stage` | Stage specific files |
|
|
359
|
+
| `nomoreide_git_unstage` | Unstage specific files |
|
|
360
|
+
| `nomoreide_git_commit` | Commit staged changes |
|
|
361
|
+
| `nomoreide_git_register_repository` | Register a repo path |
|
|
362
|
+
| `nomoreide_git_select_repository` | Select the active repo |
|
|
363
|
+
|
|
364
|
+
---
|
|
365
|
+
|
|
366
|
+
## Example Configurations
|
|
367
|
+
|
|
368
|
+
### Service Definition (via MCP)
|
|
251
369
|
|
|
252
370
|
```json
|
|
253
371
|
{
|
|
@@ -258,11 +376,11 @@ Register a service through MCP with:
|
|
|
258
376
|
"env": {
|
|
259
377
|
"NODE_ENV": "development"
|
|
260
378
|
},
|
|
261
|
-
"description": "API server"
|
|
379
|
+
"description": "REST API server"
|
|
262
380
|
}
|
|
263
381
|
```
|
|
264
382
|
|
|
265
|
-
|
|
383
|
+
### Bundle Definition (via MCP)
|
|
266
384
|
|
|
267
385
|
```json
|
|
268
386
|
{
|
|
@@ -271,21 +389,46 @@ Register a service through MCP with:
|
|
|
271
389
|
}
|
|
272
390
|
```
|
|
273
391
|
|
|
274
|
-
|
|
392
|
+
Start the whole stack in one call:
|
|
275
393
|
|
|
276
394
|
```json
|
|
277
|
-
{
|
|
278
|
-
"name": "full-stack"
|
|
279
|
-
}
|
|
395
|
+
{ "name": "full-stack" }
|
|
280
396
|
```
|
|
281
397
|
|
|
398
|
+
---
|
|
399
|
+
|
|
282
400
|
## Safety Model
|
|
283
401
|
|
|
284
|
-
NoMoreIDE
|
|
402
|
+
NoMoreIDE is designed to be **safe for AI agents to call without guard rails**:
|
|
403
|
+
|
|
404
|
+
- Does not scan or enumerate the whole filesystem
|
|
405
|
+
- Does not kill processes it did not start
|
|
406
|
+
- Reports port conflicts instead of terminating the occupying process
|
|
407
|
+
- Git tools omit all destructive operations (no `reset --hard`, `clean`, `push --force`, or `branch -D`)
|
|
408
|
+
- Config is scoped to `nomoreide.config.json` in the launch directory
|
|
409
|
+
- Logs are written only to `.nomoreide/logs/`
|
|
410
|
+
|
|
411
|
+
---
|
|
285
412
|
|
|
286
413
|
## Development
|
|
287
414
|
|
|
288
415
|
```bash
|
|
289
|
-
npm test
|
|
290
|
-
npm run build
|
|
416
|
+
npm test # run the full test suite (vitest)
|
|
417
|
+
npm run build # compile TypeScript → dist/
|
|
418
|
+
npm run dev # run from source (tsx)
|
|
291
419
|
```
|
|
420
|
+
|
|
421
|
+
---
|
|
422
|
+
|
|
423
|
+
## Contributing
|
|
424
|
+
|
|
425
|
+
Issues and pull requests are welcome at [github.com/Rorogogogo/nomoreide](https://github.com/Rorogogogo/nomoreide/issues).
|
|
426
|
+
If this tool saved you from opening VS Code today, consider leaving a ⭐.
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
<div align="center">
|
|
431
|
+
|
|
432
|
+
MIT License · Built by [Rorogogogo](https://github.com/Rorogogogo)
|
|
433
|
+
|
|
434
|
+
</div>
|