@muggleai/works 2.0.2 → 3.0.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 +173 -162
- package/dist/plugin/.claude-plugin/plugin.json +8 -0
- package/dist/plugin/.mcp.json +12 -0
- package/dist/plugin/hooks/hooks.json +14 -0
- package/dist/plugin/scripts/ensure-electron-app.sh +12 -0
- package/dist/plugin/skills/muggle-do/SKILL.md +53 -0
- package/dist/plugin/skills/muggle-do/impact-analysis.md +34 -0
- package/dist/plugin/skills/muggle-do/open-prs.md +52 -0
- package/dist/plugin/skills/muggle-do/qa.md +89 -0
- package/dist/plugin/skills/muggle-do/requirements.md +33 -0
- package/dist/plugin/skills/muggle-do/unit-tests.md +31 -0
- package/dist/plugin/skills/muggle-do/validate-code.md +30 -0
- package/dist/plugin/skills/publish-test-to-cloud/SKILL.md +41 -0
- package/dist/plugin/skills/test-feature-local/SKILL.md +86 -0
- package/package.json +7 -6
- package/plugin/.claude-plugin/plugin.json +8 -0
- package/plugin/.mcp.json +12 -0
- package/plugin/hooks/hooks.json +14 -0
- package/plugin/scripts/ensure-electron-app.sh +12 -0
- package/plugin/skills/muggle-do/SKILL.md +53 -0
- package/plugin/skills/muggle-do/impact-analysis.md +34 -0
- package/plugin/skills/muggle-do/open-prs.md +52 -0
- package/plugin/skills/muggle-do/qa.md +89 -0
- package/plugin/skills/muggle-do/requirements.md +33 -0
- package/plugin/skills/muggle-do/unit-tests.md +31 -0
- package/plugin/skills/muggle-do/validate-code.md +30 -0
- package/plugin/skills/publish-test-to-cloud/SKILL.md +41 -0
- package/plugin/skills/test-feature-local/SKILL.md +86 -0
- package/scripts/postinstall.mjs +2 -2
- package/skills-dist/muggle-do.md +0 -589
- package/skills-dist/publish-test-to-cloud.md +0 -43
- package/skills-dist/test-feature-local.md +0 -344
package/README.md
CHANGED
|
@@ -1,37 +1,25 @@
|
|
|
1
1
|
# muggle-ai-works
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**Test your web app with AI — no test code required.**
|
|
4
|
+
|
|
5
|
+
One install gives your AI coding assistant the power to QA your app like a real user would: clicking through flows, catching broken experiences, and reporting results with screenshots and evidence.
|
|
4
6
|
|
|
5
7
|
[](LICENSE)
|
|
6
8
|
[]()
|
|
7
9
|
[]()
|
|
8
10
|
[]()
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Part of the **Muggle AI** open-source ecosystem:
|
|
13
|
-
|
|
14
|
-
| Package | Purpose | Install |
|
|
15
|
-
|---------|---------|---------|
|
|
16
|
-
| **muggle-ai-works** (this repo) | QA testing MCP server + autonomous dev pipeline | `npm install @muggleai/works` |
|
|
17
|
-
| **[muggle-ai-teams](https://github.com/multiplex-ai/muggle-ai-teams)** | Agent orchestration, workflow, skills, rules | `npm install @muggleai/teams` |
|
|
18
|
-
|
|
19
|
-
muggle-ai-works handles *QA verification* (test generation, browser replay, cloud results). muggle-ai-teams handles *how work gets done* (design → implement → review → deliver). Together, they form a complete AI-assisted development workflow with built-in quality assurance.
|
|
12
|
+
Powered by [MuggleTest](https://www.muggletest.com) — the [AI-powered QA testing platform](https://www.muggletest.com).
|
|
20
13
|
|
|
21
14
|
---
|
|
22
15
|
|
|
23
|
-
##
|
|
16
|
+
## What do you get?
|
|
24
17
|
|
|
25
|
-
|
|
18
|
+
muggle-ai-works gives your AI coding assistant three things it doesn't have out of the box: the ability to test your app in a real browser, a fully autonomous dev pipeline from requirements to PR, and 70+ MCP tools for building custom QA workflows.
|
|
26
19
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
| **Test execution** | AI-driven browser (Electron app) | Scripted browser automation | Human clicks through flows |
|
|
31
|
-
| **Localhost testing** | Built-in URL rewriting | Manual config | Manual |
|
|
32
|
-
| **Cloud sync** | Automatic (projects, cases, scripts, results) | None | Spreadsheets |
|
|
33
|
-
| **Integration** | MCP tools for any AI assistant | Playwright API | None |
|
|
34
|
-
| **Learning curve** | Describe what to test in English | Learn Playwright API | Train QA team |
|
|
20
|
+
- **Test features on localhost** — describe what to test in plain English; the AI drives a real browser, clicks through your flows, and reports results with screenshots. No test code to write, no Playwright setup.
|
|
21
|
+
- **Autonomous dev pipeline** — run `/muggle:muggle-do` with a requirement in English; the AI codes the feature, writes unit tests, runs QA against your app, and opens a PR — all in one command.
|
|
22
|
+
- **70+ MCP tools** — build custom QA workflows using tools for project management, use case discovery, test case generation, browser automation, and reporting. Works with Claude Code, Cursor, and any MCP-compatible client.
|
|
35
23
|
|
|
36
24
|
---
|
|
37
25
|
|
|
@@ -40,13 +28,18 @@ Most AI coding tools help you *write* code. muggle-ai-works helps you *test* it
|
|
|
40
28
|
### 1. Install
|
|
41
29
|
|
|
42
30
|
```bash
|
|
43
|
-
|
|
31
|
+
/plugin marketplace add <marketplace-url-or-path>
|
|
32
|
+
/plugin install muggle@<marketplace-name>
|
|
44
33
|
```
|
|
45
34
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
35
|
+
<details>
|
|
36
|
+
<summary>What gets configured automatically</summary>
|
|
37
|
+
|
|
38
|
+
1. Namespaced skills (`/muggle:muggle-do`, `/muggle:test-feature-local`, `/muggle:publish-test-to-cloud`)
|
|
39
|
+
2. Plugin-managed MCP server configuration
|
|
40
|
+
3. Plugin hooks for Electron QA engine provisioning
|
|
41
|
+
|
|
42
|
+
</details>
|
|
50
43
|
|
|
51
44
|
### 2. Verify
|
|
52
45
|
|
|
@@ -57,19 +50,17 @@ muggle doctor
|
|
|
57
50
|
|
|
58
51
|
### 3. Start testing
|
|
59
52
|
|
|
60
|
-
In Claude Code or Cursor,
|
|
53
|
+
In Claude Code or Cursor, describe what to test:
|
|
61
54
|
|
|
62
55
|
> "Test my login flow on localhost:3000"
|
|
63
56
|
|
|
64
|
-
Your AI assistant
|
|
57
|
+
Your AI assistant authenticates, finds or creates test cases, launches the browser, records and replays tests, and shows results with screenshots.
|
|
65
58
|
|
|
66
59
|
---
|
|
67
60
|
|
|
68
|
-
## How
|
|
69
|
-
|
|
70
|
-
### Design principle: "Create remotely, execute locally"
|
|
61
|
+
## How does it work?
|
|
71
62
|
|
|
72
|
-
All entity management (projects, use cases, test cases) lives in the
|
|
63
|
+
muggle-ai-works separates test management from test execution. All entity management (projects, use cases, test cases) lives in the cloud via `muggle-remote-*` tools. Local execution (`muggle-local-*`) is stateless — it receives what it needs and runs the test.
|
|
73
64
|
|
|
74
65
|
### Entity model
|
|
75
66
|
|
|
@@ -81,7 +72,8 @@ Project (e.g., "My App")
|
|
|
81
72
|
└── Run Result (pass/fail + screenshots)
|
|
82
73
|
```
|
|
83
74
|
|
|
84
|
-
|
|
75
|
+
<details>
|
|
76
|
+
<summary>Test execution flow</summary>
|
|
85
77
|
|
|
86
78
|
```
|
|
87
79
|
Your AI assistant describes what to test
|
|
@@ -105,16 +97,18 @@ Results: pass/fail with evidence at ~/.muggle-ai/sessions/{runId}/
|
|
|
105
97
|
muggle-local-publish-test-script uploads to cloud
|
|
106
98
|
```
|
|
107
99
|
|
|
100
|
+
</details>
|
|
101
|
+
|
|
108
102
|
---
|
|
109
103
|
|
|
110
104
|
## Three Ways to Use It
|
|
111
105
|
|
|
112
|
-
### 1. `/test-feature-local` — Test a feature on localhost
|
|
106
|
+
### 1. `/muggle:test-feature-local` — Test a feature on localhost
|
|
113
107
|
|
|
114
|
-
|
|
108
|
+
Describe what to test in English. The AI finds the right project and test cases, launches a real browser, and reports results with screenshots.
|
|
115
109
|
|
|
116
110
|
```
|
|
117
|
-
> /test-feature-local
|
|
111
|
+
> /muggle:test-feature-local
|
|
118
112
|
|
|
119
113
|
"Test my login changes on localhost:3999"
|
|
120
114
|
|
|
@@ -128,12 +122,12 @@ Interactive workflow: pick a project → pick a use case → pick a test case
|
|
|
128
122
|
7. Publish to cloud? (y)
|
|
129
123
|
```
|
|
130
124
|
|
|
131
|
-
### 2. `/muggle-do` — Autonomous dev pipeline
|
|
125
|
+
### 2. `/muggle:muggle-do` — Autonomous dev pipeline
|
|
132
126
|
|
|
133
|
-
Full development cycle: requirements
|
|
127
|
+
Full development cycle: requirements to PR in one command. The AI codes the feature, writes unit tests, runs QA against your running app, and opens a PR.
|
|
134
128
|
|
|
135
129
|
```
|
|
136
|
-
> /muggle-do "Add a logout button to the header"
|
|
130
|
+
> /muggle:muggle-do "Add a logout button to the header"
|
|
137
131
|
|
|
138
132
|
REQUIREMENTS → Goal: Add logout button. Criteria: visible, functional, redirects.
|
|
139
133
|
IMPACT → frontend repo, src/components/Header.tsx
|
|
@@ -145,15 +139,14 @@ OPEN_PRS → PR #42 opened
|
|
|
145
139
|
DONE → 1 iteration, all green
|
|
146
140
|
```
|
|
147
141
|
|
|
148
|
-
Features:
|
|
149
142
|
- Session-based with crash recovery (`.muggle-do/sessions/`)
|
|
150
|
-
- Auto-triage: analyzes failures
|
|
143
|
+
- Auto-triage: analyzes failures and loops back to fix (max 3 iterations)
|
|
151
144
|
- Multi-repo support via `muggle-repos.json`
|
|
152
|
-
-
|
|
145
|
+
- PRs include QA results and screenshots in the description
|
|
153
146
|
|
|
154
|
-
### 3. Direct MCP tool calls — Build your own workflow
|
|
147
|
+
### 3. Direct MCP tool calls — Build your own QA workflow
|
|
155
148
|
|
|
156
|
-
Use any of the 70+ MCP tools directly from your AI assistant
|
|
149
|
+
Use any of the 70+ MCP tools directly from your AI assistant. This is the lowest-level option and the most flexible for building custom QA workflows.
|
|
157
150
|
|
|
158
151
|
```
|
|
159
152
|
"Create a project called My App with URL https://myapp.com"
|
|
@@ -164,26 +157,12 @@ Use any of the 70+ MCP tools directly from your AI assistant:
|
|
|
164
157
|
|
|
165
158
|
---
|
|
166
159
|
|
|
167
|
-
##
|
|
168
|
-
|
|
169
|
-
When both packages are installed, muggle-ai-teams automatically integrates QA into its workflow:
|
|
170
|
-
|
|
171
|
-
| Workflow Step | What Happens |
|
|
172
|
-
|--------------|-------------|
|
|
173
|
-
| **Step 1F** (Plan) | QA test instructions written per implementation slice |
|
|
174
|
-
| **Step 2** (Execute) | Per-slice QA via muggle-ai-works before each commit |
|
|
175
|
-
| **Step 3** (Verify) | Full regression sweep replaying all project scripts |
|
|
176
|
-
| **Step 5** (Push) | QA results published to cloud, linked in PR description |
|
|
177
|
-
|
|
178
|
-
Frontend slices get browser QA. Backend-only slices are verified by unit tests (browser QA skipped with documented reasoning).
|
|
179
|
-
|
|
180
|
-
Install both: `npm install @muggleai/works @muggleai/teams`
|
|
181
|
-
|
|
182
|
-
---
|
|
160
|
+
## What MCP tools are included?
|
|
183
161
|
|
|
184
|
-
|
|
162
|
+
muggle-ai-works provides 70+ MCP tools organized into 8 categories: authentication, project management, use cases, test cases, test scripts, local execution, reports, and administration. These tools power all AI testing automation workflows — from one-off browser checks to full QA automation pipelines.
|
|
185
163
|
|
|
186
|
-
|
|
164
|
+
<details>
|
|
165
|
+
<summary>Authentication (muggle-remote-auth-*)</summary>
|
|
187
166
|
|
|
188
167
|
| Tool | Purpose |
|
|
189
168
|
|------|---------|
|
|
@@ -192,7 +171,10 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
192
171
|
| `muggle-remote-auth-poll` | Poll for login completion |
|
|
193
172
|
| `muggle-remote-auth-logout` | Clear credentials |
|
|
194
173
|
|
|
195
|
-
|
|
174
|
+
</details>
|
|
175
|
+
|
|
176
|
+
<details>
|
|
177
|
+
<summary>Project Management (muggle-remote-project-*)</summary>
|
|
196
178
|
|
|
197
179
|
| Tool | Purpose |
|
|
198
180
|
|------|---------|
|
|
@@ -202,7 +184,10 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
202
184
|
| `muggle-remote-project-update` | Update project |
|
|
203
185
|
| `muggle-remote-project-delete` | Delete project |
|
|
204
186
|
|
|
205
|
-
|
|
187
|
+
</details>
|
|
188
|
+
|
|
189
|
+
<details>
|
|
190
|
+
<summary>Use Cases (muggle-remote-use-case-*)</summary>
|
|
206
191
|
|
|
207
192
|
| Tool | Purpose |
|
|
208
193
|
|------|---------|
|
|
@@ -211,7 +196,10 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
211
196
|
| `muggle-remote-use-case-prompt-preview` | Preview before creating |
|
|
212
197
|
| `muggle-remote-use-case-update-from-prompt` | Regenerate from new prompt |
|
|
213
198
|
|
|
214
|
-
|
|
199
|
+
</details>
|
|
200
|
+
|
|
201
|
+
<details>
|
|
202
|
+
<summary>Test Cases (muggle-remote-test-case-*)</summary>
|
|
215
203
|
|
|
216
204
|
| Tool | Purpose |
|
|
217
205
|
|------|---------|
|
|
@@ -221,7 +209,10 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
221
209
|
| `muggle-remote-test-case-create` | Create test case |
|
|
222
210
|
| `muggle-remote-test-case-generate-from-prompt` | Generate from prompt |
|
|
223
211
|
|
|
224
|
-
|
|
212
|
+
</details>
|
|
213
|
+
|
|
214
|
+
<details>
|
|
215
|
+
<summary>Test Scripts and Workflows (muggle-remote-workflow-*)</summary>
|
|
225
216
|
|
|
226
217
|
| Tool | Purpose |
|
|
227
218
|
|------|---------|
|
|
@@ -233,7 +224,10 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
233
224
|
| `muggle-remote-workflow-start-test-script-replay` | Replay single script |
|
|
234
225
|
| `muggle-remote-workflow-start-test-script-replay-bulk` | Batch replay |
|
|
235
226
|
|
|
236
|
-
|
|
227
|
+
</details>
|
|
228
|
+
|
|
229
|
+
<details>
|
|
230
|
+
<summary>Local Execution (muggle-local-*)</summary>
|
|
237
231
|
|
|
238
232
|
| Tool | Purpose |
|
|
239
233
|
|------|---------|
|
|
@@ -245,7 +239,10 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
245
239
|
| `muggle-local-run-result-get` | Get detailed results + screenshots |
|
|
246
240
|
| `muggle-local-publish-test-script` | Publish script to cloud |
|
|
247
241
|
|
|
248
|
-
|
|
242
|
+
</details>
|
|
243
|
+
|
|
244
|
+
<details>
|
|
245
|
+
<summary>Reports and Analytics (muggle-remote-report-*)</summary>
|
|
249
246
|
|
|
250
247
|
| Tool | Purpose |
|
|
251
248
|
|------|---------|
|
|
@@ -254,11 +251,49 @@ Install both: `npm install @muggleai/works @muggleai/teams`
|
|
|
254
251
|
| `muggle-remote-report-final-generate` | Generate final report (PDF/HTML/Markdown) |
|
|
255
252
|
| `muggle-remote-project-test-results-summary-get` | Test results summary |
|
|
256
253
|
|
|
257
|
-
|
|
254
|
+
</details>
|
|
255
|
+
|
|
256
|
+
<details>
|
|
257
|
+
<summary>Administration (PRD, secrets, billing, scheduling)</summary>
|
|
258
|
+
|
|
259
|
+
| Category | Tools |
|
|
260
|
+
|----------|-------|
|
|
261
|
+
| PRD processing | `muggle-remote-prd-*` — upload and process product requirements docs |
|
|
262
|
+
| Secrets management | `muggle-remote-secret-*` — store credentials for test environments |
|
|
263
|
+
| Wallet and billing | `muggle-remote-wallet-*` — manage credits and payment methods |
|
|
264
|
+
| Scheduling | `muggle-remote-recommend-*` — get CI/CD and schedule recommendations |
|
|
265
|
+
|
|
266
|
+
</details>
|
|
258
267
|
|
|
259
268
|
---
|
|
260
269
|
|
|
261
|
-
##
|
|
270
|
+
## Works with muggle-ai-teams
|
|
271
|
+
|
|
272
|
+
[muggle-ai-teams](https://github.com/multiplex-ai/muggle-ai-teams) is the companion package for agent orchestration, workflow steps, and delivery. When both packages are installed, muggle-ai-teams automatically integrates QA into the development workflow at each stage.
|
|
273
|
+
|
|
274
|
+
| Workflow Step | What Happens |
|
|
275
|
+
|--------------|-------------|
|
|
276
|
+
| **Plan** | QA test instructions written per implementation slice |
|
|
277
|
+
| **Build** | Per-slice QA via muggle-ai-works before each commit |
|
|
278
|
+
| **Verify** | Full regression sweep replaying all project scripts |
|
|
279
|
+
| **Ship** | QA results published to cloud, linked in PR description |
|
|
280
|
+
|
|
281
|
+
Frontend slices get browser QA. Backend-only slices are verified by unit tests (browser QA skipped with documented reasoning).
|
|
282
|
+
|
|
283
|
+
Install both: `npm install @muggleai/works @muggleai/teams`
|
|
284
|
+
|
|
285
|
+
**Muggle AI open-source ecosystem:**
|
|
286
|
+
|
|
287
|
+
| Package | Purpose | Install |
|
|
288
|
+
|---------|---------|---------|
|
|
289
|
+
| **muggle-ai-works** (this repo) | QA testing MCP server + autonomous dev pipeline | `/plugin install muggle@<marketplace>` |
|
|
290
|
+
| **[muggle-ai-teams](https://github.com/multiplex-ai/muggle-ai-teams)** | Agent orchestration, workflow, skills, rules | `npm install @muggleai/teams` |
|
|
291
|
+
|
|
292
|
+
Want the full platform experience? [MuggleTest](https://www.muggletest.com) gives you everything out of the box — no setup, no configuration.
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## CLI Reference
|
|
262
297
|
|
|
263
298
|
```bash
|
|
264
299
|
# Server (main command — starts MCP server for AI clients)
|
|
@@ -266,7 +301,7 @@ muggle serve # Start with all tools (default)
|
|
|
266
301
|
muggle serve --qa # Cloud QA tools only
|
|
267
302
|
muggle serve --local # Local QA tools only
|
|
268
303
|
|
|
269
|
-
# Setup
|
|
304
|
+
# Setup and Diagnostics
|
|
270
305
|
muggle setup # Download/update QA engine
|
|
271
306
|
muggle setup --force # Force re-download
|
|
272
307
|
muggle doctor # Diagnose installation issues
|
|
@@ -283,25 +318,44 @@ muggle --help # Show help
|
|
|
283
318
|
|
|
284
319
|
---
|
|
285
320
|
|
|
286
|
-
##
|
|
321
|
+
## Setup and Configuration
|
|
287
322
|
|
|
288
|
-
Authentication happens automatically when you first use a tool that requires it:
|
|
323
|
+
Authentication happens automatically when you first use a tool that requires it: a browser window opens with a verification code, you log in with your Muggle AI account, and the tool call continues. Credentials persist across sessions in `~/.muggle-ai/`.
|
|
289
324
|
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
3. The tool call continues with your credentials
|
|
325
|
+
<details>
|
|
326
|
+
<summary>MCP client configuration examples</summary>
|
|
293
327
|
|
|
294
|
-
|
|
328
|
+
When installed as a plugin, MCP server configuration is shipped by the plugin (`plugin/.mcp.json`) and does not require manual user-level file copy.
|
|
295
329
|
|
|
296
|
-
|
|
330
|
+
**Environment targeting** — set `MUGGLE_MCP_PROMPT_SERVICE_TARGET` to switch between production and dev:
|
|
297
331
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
332
|
+
```json
|
|
333
|
+
{
|
|
334
|
+
"mcpServers": {
|
|
335
|
+
"muggle": {
|
|
336
|
+
"command": "muggle",
|
|
337
|
+
"args": ["serve"],
|
|
338
|
+
"env": {
|
|
339
|
+
"MUGGLE_MCP_PROMPT_SERVICE_TARGET": "production"
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
```
|
|
301
345
|
|
|
302
|
-
|
|
346
|
+
**Multi-repo config for /muggle:muggle-do** — create `muggle-repos.json` in your working directory:
|
|
347
|
+
|
|
348
|
+
```json
|
|
349
|
+
[
|
|
350
|
+
{ "name": "frontend", "path": "/absolute/path/to/frontend", "testCommand": "pnpm test" },
|
|
351
|
+
{ "name": "backend", "path": "/absolute/path/to/backend", "testCommand": "pnpm test" }
|
|
352
|
+
]
|
|
353
|
+
```
|
|
303
354
|
|
|
304
|
-
|
|
355
|
+
</details>
|
|
356
|
+
|
|
357
|
+
<details>
|
|
358
|
+
<summary>Data directory structure (~/.muggle-ai/)</summary>
|
|
305
359
|
|
|
306
360
|
```
|
|
307
361
|
~/.muggle-ai/
|
|
@@ -317,69 +371,61 @@ Credentials are stored in `~/.muggle-ai/` and persist across sessions.
|
|
|
317
371
|
└── {version}/
|
|
318
372
|
```
|
|
319
373
|
|
|
374
|
+
</details>
|
|
375
|
+
|
|
320
376
|
---
|
|
321
377
|
|
|
322
|
-
##
|
|
378
|
+
## What AI clients does it work with?
|
|
323
379
|
|
|
324
|
-
|
|
380
|
+
Full support for Claude Code. MCP tools work with Cursor and any MCP-compatible client. Plugin skills (`/muggle:muggle-do`, `/muggle:test-feature-local`) require Claude Code plugin support.
|
|
381
|
+
|
|
382
|
+
<details>
|
|
383
|
+
<summary>Platform compatibility table</summary>
|
|
384
|
+
|
|
385
|
+
| Platform | MCP Tools | /muggle:muggle-do | /muggle:test-feature-local |
|
|
325
386
|
|----------|-----------|-----------|-------------------|
|
|
326
387
|
| **Claude Code** | Yes | Yes | Yes |
|
|
327
|
-
| **Cursor** | Yes (via MCP) | No (needs
|
|
388
|
+
| **Cursor** | Yes (via MCP) | No (needs plugin) | No (needs plugin) |
|
|
328
389
|
| **Others** | Via MCP if supported | No | No |
|
|
329
390
|
|
|
330
|
-
|
|
391
|
+
</details>
|
|
331
392
|
|
|
332
393
|
---
|
|
333
394
|
|
|
334
|
-
|
|
395
|
+
<details>
|
|
396
|
+
<summary>Troubleshooting</summary>
|
|
335
397
|
|
|
336
|
-
###
|
|
337
|
-
|
|
338
|
-
**Cursor** (`~/.cursor/mcp.json`) — auto-configured on install:
|
|
398
|
+
### "unauthorized_client" during login
|
|
339
399
|
|
|
340
|
-
|
|
341
|
-
{
|
|
342
|
-
"mcpServers": {
|
|
343
|
-
"muggle": {
|
|
344
|
-
"command": "muggle",
|
|
345
|
-
"args": ["serve"]
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
}
|
|
349
|
-
```
|
|
400
|
+
**Cause**: MCP configured for one environment but authenticating against another.
|
|
350
401
|
|
|
351
|
-
|
|
402
|
+
**Fix**: Set the correct `MUGGLE_MCP_PROMPT_SERVICE_TARGET` in your MCP config and restart your client.
|
|
352
403
|
|
|
353
|
-
|
|
404
|
+
### QA engine not found
|
|
354
405
|
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
"muggle": {
|
|
359
|
-
"command": "muggle",
|
|
360
|
-
"args": ["serve"],
|
|
361
|
-
"env": {
|
|
362
|
-
"MUGGLE_MCP_PROMPT_SERVICE_TARGET": "production"
|
|
363
|
-
}
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
|
-
}
|
|
406
|
+
```bash
|
|
407
|
+
muggle setup --force # Re-download
|
|
408
|
+
muggle doctor # Diagnose
|
|
367
409
|
```
|
|
368
410
|
|
|
369
|
-
###
|
|
370
|
-
|
|
371
|
-
Create `muggle-repos.json` in your working directory:
|
|
411
|
+
### Authentication keeps expiring
|
|
372
412
|
|
|
373
|
-
```
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
]
|
|
413
|
+
```bash
|
|
414
|
+
muggle logout # Clear all credentials
|
|
415
|
+
rm ~/.muggle-ai/auth.json ~/.muggle-ai/credentials.json
|
|
416
|
+
muggle login # Fresh login
|
|
378
417
|
```
|
|
379
418
|
|
|
419
|
+
</details>
|
|
420
|
+
|
|
380
421
|
---
|
|
381
422
|
|
|
382
|
-
##
|
|
423
|
+
## About
|
|
424
|
+
|
|
425
|
+
Built by the team behind [MuggleTest](https://www.muggletest.com) — [AI-powered QA testing](https://www.muggletest.com) for teams who ship fast.
|
|
426
|
+
|
|
427
|
+
<details>
|
|
428
|
+
<summary>For contributors</summary>
|
|
383
429
|
|
|
384
430
|
```bash
|
|
385
431
|
# Install dependencies
|
|
@@ -403,14 +449,14 @@ pnpm run lint:check # Check only
|
|
|
403
449
|
pnpm run typecheck
|
|
404
450
|
```
|
|
405
451
|
|
|
406
|
-
|
|
452
|
+
**CI/CD**
|
|
407
453
|
|
|
408
454
|
| Workflow | Trigger | Description |
|
|
409
455
|
|----------|---------|-------------|
|
|
410
456
|
| `ci.yml` | Push/PR to `master` | Lint, test, build on multiple platforms |
|
|
411
457
|
| `publish-works.yml` | Tag `v*` or manual | Verify, audit, smoke-install, publish to npm |
|
|
412
458
|
|
|
413
|
-
|
|
459
|
+
**Publishing**
|
|
414
460
|
|
|
415
461
|
```bash
|
|
416
462
|
# Update version in package.json
|
|
@@ -418,40 +464,7 @@ git tag v2.0.1 && git push --tags
|
|
|
418
464
|
# publish-works.yml handles the rest
|
|
419
465
|
```
|
|
420
466
|
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
## Troubleshooting
|
|
424
|
-
|
|
425
|
-
### "unauthorized_client" during login
|
|
426
|
-
|
|
427
|
-
**Cause**: MCP configured for one environment but authenticating against another.
|
|
428
|
-
|
|
429
|
-
**Fix**: Set the correct `MUGGLE_MCP_PROMPT_SERVICE_TARGET` in your MCP config and restart your client.
|
|
430
|
-
|
|
431
|
-
### QA engine not found
|
|
432
|
-
|
|
433
|
-
```bash
|
|
434
|
-
muggle setup --force # Re-download
|
|
435
|
-
muggle doctor # Diagnose
|
|
436
|
-
```
|
|
437
|
-
|
|
438
|
-
### Authentication keeps expiring
|
|
439
|
-
|
|
440
|
-
```bash
|
|
441
|
-
muggle logout # Clear all credentials
|
|
442
|
-
rm ~/.muggle-ai/auth.json ~/.muggle-ai/credentials.json
|
|
443
|
-
muggle login # Fresh login
|
|
444
|
-
```
|
|
445
|
-
|
|
446
|
-
---
|
|
447
|
-
|
|
448
|
-
## About
|
|
449
|
-
|
|
450
|
-
Built by the team behind **[MuggleTest](https://www.muggletest.com)** — an AI-powered QA testing platform that makes software testing accessible to everyone, no coding required.
|
|
451
|
-
|
|
452
|
-
**Muggle AI open-source ecosystem:**
|
|
453
|
-
- **[muggle-ai-works](https://github.com/multiplex-ai/muggle-ai-works)** — QA testing MCP server + autonomous dev pipeline (this repo)
|
|
454
|
-
- **[muggle-ai-teams](https://github.com/multiplex-ai/muggle-ai-teams)** — Agent orchestration, workflow, skills, and rules
|
|
467
|
+
</details>
|
|
455
468
|
|
|
456
469
|
---
|
|
457
470
|
|
|
@@ -459,6 +472,4 @@ Built by the team behind **[MuggleTest](https://www.muggletest.com)** — an AI-
|
|
|
459
472
|
|
|
460
473
|
[MIT](LICENSE) — Use it, fork it, make it yours.
|
|
461
474
|
|
|
462
|
-
---
|
|
463
|
-
|
|
464
475
|
If this helps your development workflow, consider giving it a star. It helps others find it.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -euo pipefail
|
|
4
|
+
|
|
5
|
+
# Ensure the Electron QA runtime is installed/up to date.
|
|
6
|
+
# This is intentionally best-effort so plugin startup is resilient.
|
|
7
|
+
if command -v muggle >/dev/null 2>&1; then
|
|
8
|
+
muggle setup >/dev/null 2>&1 || true
|
|
9
|
+
exit 0
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
npx -y @muggleai/works setup >/dev/null 2>&1 || true
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: muggle-do
|
|
3
|
+
description: Unified Muggle AI workflow entry point. Routes to autonomous dev cycle, status, repair, or upgrade.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Muggle Do
|
|
8
|
+
|
|
9
|
+
Muggle Do is the top-level command for the Muggle AI development workflow.
|
|
10
|
+
|
|
11
|
+
It supports two categories of execution:
|
|
12
|
+
|
|
13
|
+
1. **Dev cycle**: requirements -> impact analysis -> validate code -> coding -> unit tests -> QA -> open PRs
|
|
14
|
+
2. **Maintenance**: status, repair, upgrade
|
|
15
|
+
|
|
16
|
+
## Input routing
|
|
17
|
+
|
|
18
|
+
Treat `$ARGUMENTS` as the user command:
|
|
19
|
+
|
|
20
|
+
- Empty / `help` / `menu` / `?` -> show menu and session selector.
|
|
21
|
+
- `status` -> run installation and auth status checks.
|
|
22
|
+
- `repair` -> run repair workflow.
|
|
23
|
+
- `upgrade` -> run upgrade workflow.
|
|
24
|
+
- Anything else -> treat as a new task description and start/resume a dev-cycle session.
|
|
25
|
+
|
|
26
|
+
## Session model
|
|
27
|
+
|
|
28
|
+
Use `.muggle-do/sessions/<slug>/` with these files:
|
|
29
|
+
|
|
30
|
+
- `state.md`
|
|
31
|
+
- `requirements.md`
|
|
32
|
+
- `iterations/<NNN>.md`
|
|
33
|
+
- `result.md`
|
|
34
|
+
|
|
35
|
+
On each stage transition, update `state.md` and append stage output to the active iteration file.
|
|
36
|
+
|
|
37
|
+
## Dev cycle agents
|
|
38
|
+
|
|
39
|
+
Use the supporting files in this directory as stage-specific instructions:
|
|
40
|
+
|
|
41
|
+
- [requirements.md](requirements.md)
|
|
42
|
+
- [impact-analysis.md](impact-analysis.md)
|
|
43
|
+
- [validate-code.md](validate-code.md)
|
|
44
|
+
- [unit-tests.md](unit-tests.md)
|
|
45
|
+
- [qa.md](qa.md)
|
|
46
|
+
- [open-prs.md](open-prs.md)
|
|
47
|
+
|
|
48
|
+
## Guardrails
|
|
49
|
+
|
|
50
|
+
- Do not skip unit tests before QA.
|
|
51
|
+
- Do not skip QA due to missing scripts; generate when needed.
|
|
52
|
+
- If the same stage fails 3 times in a row, escalate with details.
|
|
53
|
+
- If total iterations reach 3 and QA still fails, continue to PR creation with `[QA FAILING]`.
|