@explainui/mcp 0.1.1 → 0.1.4
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 +14 -11
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +5 -1
- package/dist/client.js.map +1 -1
- package/dist/index.js +56 -55
- package/dist/index.js.map +1 -1
- package/dist/tools.d.ts +1 -7
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +112 -105
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -109,17 +109,16 @@ Load your project configuration. **Call this first** before any analysis.
|
|
|
109
109
|
|
|
110
110
|
### `explainui_analyze`
|
|
111
111
|
|
|
112
|
-
Run a UX QA check. Captures screenshots
|
|
112
|
+
Run a UX QA check. Captures screenshots (desktop 1440×900, multiple scroll positions) and runs analysis against your project's UX constraints. Iteration is tracked automatically — never pass an iteration number.
|
|
113
113
|
|
|
114
114
|
| Parameter | Type | Required | Description |
|
|
115
115
|
|---|---|---|---|
|
|
116
116
|
| `project_id` | string | Yes | Project ID from attach step |
|
|
117
|
-
| `page_key` | string | Yes | Page to check
|
|
118
|
-
| `
|
|
119
|
-
| `
|
|
120
|
-
| `git_snapshot_hash` | string | No | Short SHA from pre-analysis commit |
|
|
117
|
+
| `page_key` | string | Yes | Page to check — must exactly match a `page_key` from attach |
|
|
118
|
+
| `changes_made` | string | Yes | What was built/changed since last analysis (40–2000 chars). For first run: describe the current state of the page. |
|
|
119
|
+
| `git_snapshot_hash` | string | No | Short SHA (`git rev-parse --short HEAD`). Pass `null` if git unavailable. |
|
|
121
120
|
|
|
122
|
-
**Returns:** Pass/fail verdict, per-check results, issues
|
|
121
|
+
**Returns:** Pass/fail verdict, per-check results, issues grouped by fix type, and a `NEXT STEP` instruction block that tells the agent exactly what to do next.
|
|
123
122
|
|
|
124
123
|
### `explainui_close_project`
|
|
125
124
|
|
|
@@ -133,14 +132,18 @@ End the session. Releases browser resources and clears cached config.
|
|
|
133
132
|
## Typical Workflow
|
|
134
133
|
|
|
135
134
|
```
|
|
136
|
-
1. explainui_attach_project
|
|
137
|
-
2. (
|
|
138
|
-
3. explainui_analyze → capture +
|
|
139
|
-
4. (
|
|
135
|
+
1. explainui_attach_project → load config, shows pages + quota, asks which to analyze
|
|
136
|
+
2. (user confirms pages, e.g. "homepage and pricing")
|
|
137
|
+
3. explainui_analyze → capture + analysis (iteration tracked automatically)
|
|
138
|
+
4. (agent applies all fixes listed)
|
|
140
139
|
5. explainui_analyze → re-check (iteration 2)
|
|
141
|
-
6.
|
|
140
|
+
6. ... repeat until next_action="done" or "review_human"
|
|
141
|
+
7. explainui_analyze → next confirmed page
|
|
142
|
+
8. explainui_close_project → cleanup when all pages done
|
|
142
143
|
```
|
|
143
144
|
|
|
145
|
+
The agent never needs to count iterations or ask whether to run analysis — the MCP response includes a `NEXT STEP` block with explicit instructions.
|
|
146
|
+
|
|
144
147
|
## Development
|
|
145
148
|
|
|
146
149
|
```bash
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,WAAW,EAEZ,MAAM,YAAY,CAAC;AAGpB,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,MAAM;IAa1B;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC;IAK1C;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,WAAW,EAEZ,MAAM,YAAY,CAAC;AAGpB,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,MAAM;IAa1B;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC;IAK1C;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAoCjE;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAY5D;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAQtC"}
|
package/dist/client.js
CHANGED
|
@@ -55,12 +55,16 @@ export class ApiClient {
|
|
|
55
55
|
name: data.name,
|
|
56
56
|
pages: data.pages || [],
|
|
57
57
|
constraint_bundle: {
|
|
58
|
-
user_goal: cb.user_goal || "",
|
|
58
|
+
user_goal: cb.user_goal || "Not specified — apply visual best practices as the evaluation standard.",
|
|
59
59
|
user_enforced_constraints: cb.user_enforced_constraints || [],
|
|
60
60
|
do_not_flag: cb.do_not_flag || [],
|
|
61
61
|
},
|
|
62
62
|
trigger_threshold: data.trigger_threshold || "major_features",
|
|
63
63
|
fetched_at: Date.now(),
|
|
64
|
+
tier: data.tier || "free",
|
|
65
|
+
analyses_remaining: data.analyses_remaining ?? 0,
|
|
66
|
+
analyses_limit: data.analyses_limit ?? 0,
|
|
67
|
+
last_run_page_keys: data.last_run_page_keys || [],
|
|
64
68
|
};
|
|
65
69
|
}
|
|
66
70
|
/**
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAA6B,MAAM,OAAO,CAAC;AASlD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,OAAO,SAAS;IACZ,MAAM,CAAgB;IACtB,UAAU,CAAS;IACnB,UAAU,CAAS;IAE3B,YAAY,MAAc;QACxB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,MAAM,EAAE,mCAAmC;YACpD,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,YAAY,EAAE,iBAAiB,MAAM,CAAC,UAAU,EAAE;aACnD;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAc,aAAa,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QACtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,SAAS,SAAS,EAAE;YACrE,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE;SAC9C,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,cAAc,CACtB,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,EAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,gCAAgC,CACvD,CAAC;QACJ,CAAC;QACD,iEAAiE;QACjE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAChC,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC;gBAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,EAAE,GAAG,EAAE,CAAC;YAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ;YAAE,EAAE,GAAG,EAAE,CAAC;QAE3C,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,iBAAiB,EAAE;gBACjB,SAAS,EAAE,EAAE,CAAC,SAAS,IAAI,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -33,6 +33,9 @@ const session = {
|
|
|
33
33
|
platform: detectPlatform(),
|
|
34
34
|
currentRunId: null,
|
|
35
35
|
currentRunNumber: null,
|
|
36
|
+
iterationByPage: {},
|
|
37
|
+
selectedPages: null,
|
|
38
|
+
skippedPages: [],
|
|
36
39
|
};
|
|
37
40
|
// ── Config + Client ────────────────────────────────────────────────────────
|
|
38
41
|
const config = loadConfig();
|
|
@@ -46,20 +49,32 @@ const server = new McpServer({
|
|
|
46
49
|
server.tool("explainui_attach_project", `Load your ExplainUI project configuration into this session.
|
|
47
50
|
|
|
48
51
|
WHEN TO CALL:
|
|
49
|
-
Immediately when the user provides their project ID in any
|
|
52
|
+
Immediately when the user provides their project ID in any form:
|
|
50
53
|
"ExplainUI project: proj_abc123"
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
Call BEFORE writing any code. BEFORE starting any task. First action always.
|
|
54
|
+
"proj_abc123"
|
|
55
|
+
Call this BEFORE any code changes. First action always.
|
|
54
56
|
|
|
55
|
-
|
|
56
|
-
- pages[]: every configured page with page_key → URL mapping
|
|
57
|
-
- constraint_bundle: design constraints + intentional decisions to skip
|
|
58
|
-
- trigger_threshold: when to auto-call analyze
|
|
59
|
-
- project name + tier
|
|
57
|
+
AFTER LOADING — present this to the user (fill in real values):
|
|
60
58
|
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
Project: [name] ([project_id])
|
|
60
|
+
Tier: [tier] · Quota: [analyses_remaining] of [analyses_limit] analyses remaining
|
|
61
|
+
|
|
62
|
+
Pages configured:
|
|
63
|
+
• [page_key] → [url]
|
|
64
|
+
• [page_key] → [url]
|
|
65
|
+
|
|
66
|
+
Last session analyzed: [last_run_page_keys, or "none yet" if empty]
|
|
67
|
+
|
|
68
|
+
Which pages should I check this session?
|
|
69
|
+
(Say "all", "same as last time", or list specific page keys like "homepage, pricing")
|
|
70
|
+
|
|
71
|
+
Wait for the user's answer. Store the confirmed pages mentally for this session.
|
|
72
|
+
Once confirmed, analyze those pages automatically — do NOT ask again this session.
|
|
73
|
+
|
|
74
|
+
If the user says "skip [page]" at any point, stop analyzing that page for this session.
|
|
75
|
+
If no previous run exists, default to all pages.
|
|
76
|
+
|
|
77
|
+
CONFIG IS CACHED for 5 minutes.`, {
|
|
63
78
|
project_id: z
|
|
64
79
|
.string()
|
|
65
80
|
.describe("The project ID from explainui.com/dashboard, format: proj_xxxxxxxx"),
|
|
@@ -67,64 +82,50 @@ returns cached result without hitting the API.`, {
|
|
|
67
82
|
return attachProject(session, client, project_id);
|
|
68
83
|
});
|
|
69
84
|
// ── Tool: explainui_analyze ────────────────────────────────────────────────
|
|
70
|
-
server.tool("explainui_analyze", `Run a UX QA check on a locally running
|
|
85
|
+
server.tool("explainui_analyze", `Run a UX QA check on a locally running page.
|
|
86
|
+
|
|
87
|
+
WHEN TO CALL:
|
|
88
|
+
Automatically after any meaningful UI change on a page the user confirmed.
|
|
89
|
+
Do NOT ask "should I run an analysis?" — just run it.
|
|
90
|
+
Only analyze pages the user confirmed in explainui_attach_project this session.
|
|
91
|
+
If the user said "skip [page]", do not call this for that page.
|
|
71
92
|
|
|
72
|
-
|
|
73
|
-
1.
|
|
74
|
-
2.
|
|
75
|
-
3.
|
|
93
|
+
HOW THE LOOP WORKS (per page):
|
|
94
|
+
1. Call explainui_analyze — iteration is tracked automatically, never pass a number
|
|
95
|
+
2. next_action="fix" → apply ALL fixes listed, then call again (same page)
|
|
96
|
+
3. next_action="done" → all checks passed — move to next confirmed page
|
|
97
|
+
4. next_action="review_human" → STOP for this page — tell user, share report_url, move on
|
|
76
98
|
|
|
77
|
-
|
|
99
|
+
ACROSS PAGES:
|
|
100
|
+
- Work through each confirmed page one at a time (finish all iterations on one page, then next)
|
|
101
|
+
- When all confirmed pages are done or review_human, call explainui_close_project
|
|
102
|
+
|
|
103
|
+
IMPORTANT: Call explainui_attach_project before the first analyze call in a session.`, {
|
|
78
104
|
project_id: z
|
|
79
105
|
.string()
|
|
80
|
-
.describe("
|
|
106
|
+
.describe("The project ID from explainui_attach_project. Format: proj_xxxxxxxx"),
|
|
81
107
|
page_key: z
|
|
82
108
|
.string()
|
|
83
|
-
.describe("Which page to
|
|
84
|
-
|
|
85
|
-
.number()
|
|
86
|
-
.int()
|
|
87
|
-
.min(1)
|
|
88
|
-
.max(10)
|
|
89
|
-
.describe("Current iteration count for this page_key. Start at 1. Increment after each call."),
|
|
90
|
-
this_iteration: z
|
|
109
|
+
.describe("Which page to analyze. Must exactly match one of the page_keys returned by explainui_attach_project."),
|
|
110
|
+
changes_made: z
|
|
91
111
|
.string()
|
|
92
112
|
.min(40)
|
|
93
113
|
.max(2000)
|
|
94
|
-
.describe("
|
|
114
|
+
.describe("Describe what was built or changed since the last analysis. Be specific — list the files and UI elements changed. " +
|
|
115
|
+
"Format: 'Changed X in file Y. Added Z to component W.' Minimum 40 characters. " +
|
|
116
|
+
"For iteration=1 (first run): describe the current state of the page, not changes."),
|
|
95
117
|
git_snapshot_hash: z
|
|
96
118
|
.string()
|
|
97
119
|
.nullable()
|
|
98
120
|
.optional()
|
|
99
|
-
.describe("Short SHA
|
|
100
|
-
viewport: z
|
|
101
|
-
.enum(["desktop", "tablet", "mobile", "all"])
|
|
102
|
-
.optional()
|
|
103
|
-
.default("all")
|
|
104
|
-
.describe("Which viewport(s) to capture. Default: 'all' (desktop 1440px + tablet 768px + mobile 375px). Use 'desktop' for faster runs."),
|
|
105
|
-
scroll_depth: z
|
|
106
|
-
.enum(["full", "above_fold"])
|
|
107
|
-
.optional()
|
|
108
|
-
.default("full")
|
|
109
|
-
.describe("How much of the page to capture. Default: 'full' (scrolls entire page). Use 'above_fold' for faster hero/nav-only checks."),
|
|
110
|
-
focus_areas: z
|
|
111
|
-
.array(z.enum(["contrast", "cta", "forms", "spacing", "typography", "navigation", "accessibility"]))
|
|
112
|
-
.optional()
|
|
113
|
-
.default([])
|
|
114
|
-
.describe("Narrow analysis to specific UX areas. Default: [] (all areas). Example: ['contrast', 'forms'] to focus only on contrast and form issues."),
|
|
115
|
-
user_goal: z
|
|
116
|
-
.string()
|
|
117
|
-
.max(500)
|
|
118
|
-
.optional()
|
|
119
|
-
.default("")
|
|
120
|
-
.describe("Purpose of this page in 1-2 sentences. Helps AI give contextual feedback. Example: 'SaaS pricing page — goal is to convert free users to paid plans.'"),
|
|
121
|
-
skip_iteration_validation: z
|
|
122
|
-
.boolean()
|
|
123
|
-
.optional()
|
|
124
|
-
.default(false)
|
|
125
|
-
.describe("Skip the vague-description guard on this_iteration. Default: false. Only set true if your description is intentionally short."),
|
|
121
|
+
.describe("Short git SHA of the current commit (run: git rev-parse --short HEAD). Pass null if git is unavailable."),
|
|
126
122
|
}, async (args) => {
|
|
127
|
-
return analyze(session, client,
|
|
123
|
+
return analyze(session, client, {
|
|
124
|
+
project_id: args.project_id,
|
|
125
|
+
page_key: args.page_key,
|
|
126
|
+
changes_made: args.changes_made,
|
|
127
|
+
git_snapshot_hash: args.git_snapshot_hash,
|
|
128
|
+
});
|
|
128
129
|
});
|
|
129
130
|
// ── Tool: explainui_close_project ──────────────────────────────────────────
|
|
130
131
|
server.tool("explainui_close_project", `Mark the ExplainUI session as complete. Housekeeping — always call when done.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGlE,8EAA8E;AAC9E,SAAS,cAAc;IACrB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1C,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAC9C,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IACpE,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,gBAAgB,CAAC;IAC5D,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;QAAE,OAAO,SAAS,CAAC;IACjD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,OAAO,GAAqB;IAChC,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,cAAc,EAAE;IAC1B,YAAY,EAAE,IAAI;IAClB,gBAAgB,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGlE,8EAA8E;AAC9E,SAAS,cAAc;IACrB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1C,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAC9C,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IACpE,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,gBAAgB,CAAC;IAC5D,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;QAAE,OAAO,SAAS,CAAC;IACjD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,OAAO,GAAqB;IAChC,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,cAAc,EAAE;IAC1B,YAAY,EAAE,IAAI;IAClB,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,EAAE;IACnB,aAAa,EAAE,IAAI;IACnB,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF,8EAA8E;AAC9E,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;AAC5B,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC;AAErC,8EAA8E;AAC9E,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,MAAM,CAAC,UAAU;CAC3B,CAAC,CAAC;AAEH,8EAA8E;AAC9E,MAAM,CAAC,IAAI,CACT,0BAA0B,EAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA4B8B,EAC9B;IACE,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,CACP,oEAAoE,CACrE;CACJ,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IACvB,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB;;;;;;;;;;;;;;;;;;qFAkBmF,EACnF;IACE,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,CACP,qEAAqE,CACtE;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,CACP,sGAAsG,CACvG;IACH,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,GAAG,CAAC,EAAE,CAAC;SACP,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,CACP,oHAAoH;QACpH,gFAAgF;QAChF,mFAAmF,CACpF;IACH,iBAAiB,EAAE,CAAC;SACjB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,yGAAyG,CAC1G;CACJ,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE;QAC9B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;KAC1C,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB;;;;;;;;;;;iEAW+D,EAC/D;IACE,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,CAAC,wDAAwD,CAAC;IACrE,MAAM,EAAE,CAAC;SACN,IAAI,CAAC;QACJ,gBAAgB;QAChB,aAAa;QACb,cAAc;QACd,iBAAiB;KAClB,CAAC;SACD,QAAQ,CAAC,iCAAiC,CAAC;CAC/C,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,OAAO,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,6CAA6C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AAClF,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -19,14 +19,8 @@ export declare function attachProject(session: ExplainUISession, client: ApiClie
|
|
|
19
19
|
export declare function analyze(session: ExplainUISession, client: ApiClient, args: {
|
|
20
20
|
project_id: string;
|
|
21
21
|
page_key: string;
|
|
22
|
-
|
|
23
|
-
this_iteration: string;
|
|
22
|
+
changes_made: string;
|
|
24
23
|
git_snapshot_hash?: string | null;
|
|
25
|
-
viewport?: "desktop" | "tablet" | "mobile" | "all";
|
|
26
|
-
scroll_depth?: "full" | "above_fold";
|
|
27
|
-
focus_areas?: string[];
|
|
28
|
-
user_goal?: string;
|
|
29
|
-
skip_iteration_validation?: boolean;
|
|
30
24
|
}): Promise<{
|
|
31
25
|
content: Array<{
|
|
32
26
|
type: "text";
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,KAAK,EACV,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAKpB;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,KAAK,EACV,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAKpB;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAyF7D;AAED;;GAEG;AACH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE;IACJ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,GACA,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA4H7D;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,SAAS,EAClB,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3C,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA4B7D"}
|
package/dist/tools.js
CHANGED
|
@@ -20,8 +20,8 @@ export async function attachProject(session, client, projectId) {
|
|
|
20
20
|
type: "text",
|
|
21
21
|
text: [
|
|
22
22
|
`✅ Project already loaded: ${config.name} (${config.project_id})`,
|
|
23
|
+
`Tier: ${config.tier} · Quota: ${config.analyses_remaining} of ${config.analyses_limit} remaining`,
|
|
23
24
|
`Pages: ${config.pages.map((p) => p.page_key).join(", ")}`,
|
|
24
|
-
`Trigger: ${config.trigger_threshold}`,
|
|
25
25
|
`(cached — valid for ${Math.round((CONFIG_CACHE_TTL_MS - (Date.now() - config.fetched_at)) / 1000)}s)`,
|
|
26
26
|
].join("\n"),
|
|
27
27
|
},
|
|
@@ -34,25 +34,35 @@ export async function attachProject(session, client, projectId) {
|
|
|
34
34
|
const pageList = config.pages
|
|
35
35
|
.map((p) => ` • ${p.page_key} → ${p.url}${p.description ? ` (${p.description})` : ""}`)
|
|
36
36
|
.join("\n");
|
|
37
|
+
const lastRunInfo = config.last_run_page_keys.length > 0
|
|
38
|
+
? `Last session analyzed: ${config.last_run_page_keys.join(", ")}`
|
|
39
|
+
: "Last session analyzed: none yet (first run)";
|
|
40
|
+
const quotaLine = `Quota: ${config.analyses_remaining} of ${config.analyses_limit} analyses remaining (${config.tier} tier)`;
|
|
41
|
+
const defaultPrompt = config.last_run_page_keys.length > 0
|
|
42
|
+
? `(Default: ${config.last_run_page_keys.join(", ")} — same as last session. Say "all", "same", or list specific page keys.)`
|
|
43
|
+
: `(Default: all pages. Say "all" or list specific page keys like "homepage, pricing".)`;
|
|
37
44
|
return {
|
|
38
45
|
content: [
|
|
39
46
|
{
|
|
40
47
|
type: "text",
|
|
41
48
|
text: [
|
|
42
49
|
`✅ Project loaded: ${config.name} (${config.project_id})`,
|
|
50
|
+
`Tier: ${config.tier} · ${quotaLine}`,
|
|
43
51
|
``,
|
|
44
52
|
`Pages:`,
|
|
45
53
|
pageList,
|
|
46
54
|
``,
|
|
47
|
-
|
|
55
|
+
lastRunInfo,
|
|
56
|
+
``,
|
|
48
57
|
config.constraint_bundle.user_goal
|
|
49
|
-
? `
|
|
58
|
+
? `Goal: ${config.constraint_bundle.user_goal}`
|
|
50
59
|
: "",
|
|
51
60
|
config.constraint_bundle.do_not_flag.length > 0
|
|
52
61
|
? `Do not flag: ${config.constraint_bundle.do_not_flag.join(", ")}`
|
|
53
62
|
: "",
|
|
54
63
|
``,
|
|
55
|
-
`
|
|
64
|
+
`Which pages should I analyze this session?`,
|
|
65
|
+
defaultPrompt,
|
|
56
66
|
]
|
|
57
67
|
.filter(Boolean)
|
|
58
68
|
.join("\n"),
|
|
@@ -146,6 +156,9 @@ export async function analyze(session, client, args) {
|
|
|
146
156
|
],
|
|
147
157
|
};
|
|
148
158
|
}
|
|
159
|
+
// Auto-manage iteration: increment per page_key, reset when starting fresh
|
|
160
|
+
const currentIteration = (session.iterationByPage[args.page_key] ?? 0) + 1;
|
|
161
|
+
session.iterationByPage[args.page_key] = currentIteration;
|
|
149
162
|
// Step 2: Send to API
|
|
150
163
|
try {
|
|
151
164
|
// Build element map: screenshot_label → visible DOM elements
|
|
@@ -155,17 +168,14 @@ export async function analyze(session, client, args) {
|
|
|
155
168
|
elementMap[s.label] = s.elements;
|
|
156
169
|
}
|
|
157
170
|
}
|
|
158
|
-
//
|
|
159
|
-
const
|
|
160
|
-
const constraintBundle = args.user_goal
|
|
161
|
-
? { ...baseConstraints, user_goal: args.user_goal }
|
|
162
|
-
: baseConstraints;
|
|
171
|
+
// constraint_bundle always comes from project config — no per-call override
|
|
172
|
+
const constraintBundle = session.projectConfig.constraint_bundle ?? {};
|
|
163
173
|
const response = await client.analyze({
|
|
164
174
|
project_id: args.project_id,
|
|
165
175
|
page_key: args.page_key,
|
|
166
176
|
url: pageConfig.url,
|
|
167
|
-
iteration:
|
|
168
|
-
this_iteration: args.
|
|
177
|
+
iteration: currentIteration,
|
|
178
|
+
this_iteration: args.changes_made,
|
|
169
179
|
license_key: "", // Filled by client
|
|
170
180
|
screenshots_base64: capture.screenshots.map((s) => s.data),
|
|
171
181
|
screenshot_labels: capture.screenshots.map((s) => s.label),
|
|
@@ -174,14 +184,17 @@ export async function analyze(session, client, args) {
|
|
|
174
184
|
axe_violations: capture.axe_violations,
|
|
175
185
|
element_map: Object.keys(elementMap).length > 0 ? elementMap : undefined,
|
|
176
186
|
constraint_bundle: constraintBundle,
|
|
177
|
-
skip_iteration_validation:
|
|
178
|
-
focus_areas: args.focus_areas && args.focus_areas.length > 0 ? args.focus_areas : undefined,
|
|
187
|
+
skip_iteration_validation: false,
|
|
179
188
|
});
|
|
180
189
|
// Track run state in session
|
|
181
190
|
if (response.run_id) {
|
|
182
191
|
session.currentRunId = response.run_id;
|
|
183
192
|
session.currentRunNumber = response.run_number ?? null;
|
|
184
193
|
}
|
|
194
|
+
// If done or max reached, reset iteration counter for this page so next run starts at 1
|
|
195
|
+
if (response.next_action === "done" || response.next_action === "review_human" || response.max_iterations_reached) {
|
|
196
|
+
delete session.iterationByPage[args.page_key];
|
|
197
|
+
}
|
|
185
198
|
// Step 3: Format response for Claude
|
|
186
199
|
return { content: [{ type: "text", text: formatResponse(response) }] };
|
|
187
200
|
}
|
|
@@ -207,6 +220,9 @@ export async function closeProject(session, _client, args) {
|
|
|
207
220
|
session.projectConfig = null;
|
|
208
221
|
session.currentRunId = null;
|
|
209
222
|
session.currentRunNumber = null;
|
|
223
|
+
session.iterationByPage = {};
|
|
224
|
+
session.selectedPages = null;
|
|
225
|
+
session.skippedPages = [];
|
|
210
226
|
return {
|
|
211
227
|
content: [
|
|
212
228
|
{
|
|
@@ -223,39 +239,64 @@ export async function closeProject(session, _client, args) {
|
|
|
223
239
|
};
|
|
224
240
|
}
|
|
225
241
|
// ── Response Formatter ─────────────────────────────────────────────────────
|
|
242
|
+
// The first block the agent reads is always the NEXT STEP instruction.
|
|
243
|
+
// This eliminates all ambiguity — the agent never has to decide what to do.
|
|
226
244
|
function formatResponse(resp) {
|
|
227
245
|
const lines = [];
|
|
246
|
+
// ── Error path ───────────────────────────────────────────────────────────
|
|
228
247
|
if (resp.error) {
|
|
229
248
|
if (resp.error.code === "ITERATION_LIMIT_REACHED") {
|
|
230
|
-
lines.push("
|
|
231
|
-
lines.push("");
|
|
232
|
-
lines.push("
|
|
233
|
-
lines.push("
|
|
234
|
-
lines.push("");
|
|
235
|
-
lines.
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
lines.push("
|
|
239
|
-
lines.push("");
|
|
240
|
-
lines.push(
|
|
249
|
+
lines.push("━━━ NEXT STEP ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
250
|
+
lines.push("🛑 STOP. Do NOT call explainui_analyze again.");
|
|
251
|
+
lines.push("Tell the user: max iterations reached. Report: see ExplainUI dashboard.");
|
|
252
|
+
lines.push("Then call: explainui_close_project(reason='all_pages_done')");
|
|
253
|
+
lines.push("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
254
|
+
return lines.join("\n");
|
|
255
|
+
}
|
|
256
|
+
if (resp.error.code === "QUOTA_EXCEEDED") {
|
|
257
|
+
lines.push("━━━ NEXT STEP ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
258
|
+
lines.push("🛑 STOP. Quota exceeded — do NOT retry.");
|
|
259
|
+
lines.push(`Tell the user: ${resp.error.message}`);
|
|
260
|
+
if (resp.error.upgrade_url)
|
|
261
|
+
lines.push(`Upgrade: ${resp.error.upgrade_url}`);
|
|
262
|
+
lines.push("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
241
263
|
return lines.join("\n");
|
|
242
264
|
}
|
|
243
|
-
lines.push(
|
|
244
|
-
lines.push(
|
|
245
|
-
lines.push(`Message: ${resp.error.message}`);
|
|
265
|
+
lines.push("━━━ NEXT STEP ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
266
|
+
lines.push(`❌ Error: ${resp.error.code} — ${resp.error.message}`);
|
|
246
267
|
if (resp.error.hint)
|
|
247
268
|
lines.push(`Hint: ${resp.error.hint}`);
|
|
269
|
+
lines.push("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
248
270
|
return lines.join("\n");
|
|
249
271
|
}
|
|
250
|
-
const
|
|
251
|
-
|
|
252
|
-
lines.push(
|
|
253
|
-
|
|
254
|
-
|
|
272
|
+
const runInfo = resp.run_number ? ` · Run ${resp.run_number}` : "";
|
|
273
|
+
// ── NEXT STEP block — always first, always unambiguous ───────────────────
|
|
274
|
+
lines.push("━━━ NEXT STEP ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
275
|
+
if (resp.next_action === "done" || (resp.pass && (!resp.issues || resp.issues.length === 0))) {
|
|
276
|
+
lines.push("✅ ALL CHECKS PASSED. No fixes needed.");
|
|
277
|
+
lines.push("Tell the user: UX analysis complete — no issues found.");
|
|
278
|
+
lines.push(`Report: ${resp.report_url || "see ExplainUI dashboard"}`);
|
|
279
|
+
lines.push("Then call: explainui_close_project(reason='all_pages_done')");
|
|
280
|
+
}
|
|
281
|
+
else if (resp.next_action === "review_human" || resp.max_iterations_reached) {
|
|
282
|
+
lines.push("⚠️ STOP. Max iterations reached — do NOT call explainui_analyze again.");
|
|
283
|
+
lines.push("Tell the user: remaining issues need human review.");
|
|
284
|
+
lines.push(`Report: ${resp.report_url || "see ExplainUI dashboard"}`);
|
|
285
|
+
lines.push("Then call: explainui_close_project(reason='all_pages_done')");
|
|
286
|
+
}
|
|
287
|
+
else {
|
|
288
|
+
const issueCount = resp.issues?.length ?? 0;
|
|
289
|
+
lines.push(`🔧 ${issueCount} issue(s) found. Apply ALL fixes below, then:`);
|
|
290
|
+
lines.push(`→ Call explainui_analyze(project_id="${resp.project_id}", page_key="${resp.page_key}", changes_made="<what you just fixed>")`);
|
|
291
|
+
lines.push("Iteration is tracked automatically. Do NOT ask the user — just fix and call.");
|
|
292
|
+
}
|
|
293
|
+
lines.push("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━");
|
|
294
|
+
lines.push("");
|
|
295
|
+
// ── Result summary ────────────────────────────────────────────────────────
|
|
296
|
+
lines.push(`Page: ${resp.page_key} · Iteration: ${resp.iteration}${runInfo}`);
|
|
255
297
|
lines.push("");
|
|
256
|
-
// Checks
|
|
298
|
+
// Checks
|
|
257
299
|
if (resp.checks) {
|
|
258
|
-
lines.push("Checks:");
|
|
259
300
|
for (const [check, result] of Object.entries(resp.checks)) {
|
|
260
301
|
const r = result;
|
|
261
302
|
const icon = r.pass ? "✅" : "❌";
|
|
@@ -263,83 +304,49 @@ function formatResponse(resp) {
|
|
|
263
304
|
}
|
|
264
305
|
lines.push("");
|
|
265
306
|
}
|
|
266
|
-
//
|
|
267
|
-
if (resp.
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
const unknownFix = resp.issues.filter((i) => i.fixable_by === "unknown" || (i.fixable_by !== "css" && i.fixable_by !== "html" && i.fixable_by !== "js" && i.fixable_by !== "content" && !(!i.fixable_by && i.source !== "qa_defect")));
|
|
274
|
-
function formatIssueBlock(issues, header) {
|
|
275
|
-
if (!issues || issues.length === 0)
|
|
276
|
-
return;
|
|
277
|
-
lines.push(`${header} (${issues.length}):`);
|
|
307
|
+
// Corrected since last iteration
|
|
308
|
+
if (resp.issue_statuses) {
|
|
309
|
+
const corrected = Object.entries(resp.issue_statuses).filter(([, v]) => v === "CORRECTED");
|
|
310
|
+
if (corrected.length > 0) {
|
|
311
|
+
lines.push(`✅ Fixed since last iteration (${corrected.length}):`);
|
|
312
|
+
for (const [key] of corrected)
|
|
313
|
+
lines.push(` • ${key}`);
|
|
278
314
|
lines.push("");
|
|
279
|
-
for (const issue of issues) {
|
|
280
|
-
const sourceTag = issue.source === "qa_defect" ? " [QA]" : "";
|
|
281
|
-
const statusTag = resp.issue_statuses?.[issue.id]
|
|
282
|
-
? ` [${resp.issue_statuses[issue.id]}]`
|
|
283
|
-
: "";
|
|
284
|
-
lines.push(` [${issue.severity.toUpperCase()}]${sourceTag}${statusTag} ${issue.id}: ${issue.description}`);
|
|
285
|
-
lines.push(` Category: ${issue.category || issue.type || "unknown"}`);
|
|
286
|
-
if (issue.location?.viewport || issue.location?.description)
|
|
287
|
-
lines.push(` Where: ${issue.location.viewport}${issue.location.description ? ` — ${issue.location.description}` : ""}`);
|
|
288
|
-
if (issue.source !== "qa_defect")
|
|
289
|
-
lines.push(` Confidence: ${(issue.confidence * 100).toFixed(0)}%`);
|
|
290
|
-
if (issue.suggested_fix_context)
|
|
291
|
-
lines.push(` Suggested fix: ${issue.suggested_fix_context}`);
|
|
292
|
-
lines.push("");
|
|
293
|
-
}
|
|
294
315
|
}
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
const corrected = Object.entries(resp.issue_statuses).filter(([, v]) => v === "CORRECTED");
|
|
303
|
-
if (corrected.length > 0) {
|
|
304
|
-
lines.push(`✅ CORRECTED (${corrected.length} fixed since last iteration):`);
|
|
305
|
-
for (const [key] of corrected) {
|
|
306
|
-
lines.push(` • ${key.replace("corrected_", "")}`);
|
|
307
|
-
}
|
|
308
|
-
lines.push("");
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
// Summary
|
|
312
|
-
const cssCount = autoFixable.length;
|
|
313
|
-
const manualCount = needsHtmlChanges.length + needsJsChanges.length + needsContentChanges.length;
|
|
314
|
-
if (manualCount > 0) {
|
|
315
|
-
lines.push(`Summary: ${cssCount} auto-fixable, ${manualCount} need manual/HTML changes.`);
|
|
316
|
-
lines.push("");
|
|
316
|
+
}
|
|
317
|
+
// Issues — grouped by fix type
|
|
318
|
+
if (resp.issues && resp.issues.length > 0) {
|
|
319
|
+
const groups = { css: [], html: [], js: [], content: [], unknown: [] };
|
|
320
|
+
for (const issue of resp.issues) {
|
|
321
|
+
const key = issue.fixable_by && groups[issue.fixable_by] ? issue.fixable_by : "unknown";
|
|
322
|
+
groups[key].push(issue);
|
|
317
323
|
}
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
324
|
+
const groupLabels = {
|
|
325
|
+
css: "CSS fixes",
|
|
326
|
+
html: "HTML fixes",
|
|
327
|
+
js: "JavaScript fixes",
|
|
328
|
+
content: "Content/copy fixes",
|
|
329
|
+
unknown: "Review manually",
|
|
330
|
+
};
|
|
331
|
+
for (const [key, label] of Object.entries(groupLabels)) {
|
|
332
|
+
const bucket = groups[key];
|
|
333
|
+
if (!bucket || bucket.length === 0)
|
|
334
|
+
continue;
|
|
335
|
+
lines.push(`── ${label} (${bucket.length}) ──`);
|
|
336
|
+
for (const issue of bucket) {
|
|
337
|
+
const statusTag = resp.issue_statuses?.[issue.id] ? ` [${resp.issue_statuses[issue.id]}]` : "";
|
|
338
|
+
lines.push(` [${issue.severity.toUpperCase()}]${statusTag} ${issue.id}`);
|
|
339
|
+
lines.push(` ${issue.description}`);
|
|
340
|
+
if (issue.location?.viewport)
|
|
341
|
+
lines.push(` Where: ${issue.location.viewport}${issue.location.description ? ` — ${issue.location.description}` : ""}`);
|
|
342
|
+
if (issue.suggested_fix_context)
|
|
343
|
+
lines.push(` Fix: ${issue.suggested_fix_context}`);
|
|
344
|
+
lines.push("");
|
|
323
345
|
}
|
|
324
346
|
}
|
|
325
|
-
else if (resp.next_action === "review_human") {
|
|
326
|
-
lines.push("");
|
|
327
|
-
lines.push("⚠️ HUMAN REVIEW REQUIRED — Maximum iterations reached.");
|
|
328
|
-
lines.push("The remaining issues above could not be fully resolved within 5 iterations.");
|
|
329
|
-
lines.push("Please tell the user:");
|
|
330
|
-
lines.push(" 1. These issues need manual human review and intervention");
|
|
331
|
-
lines.push(" 2. The full report with all iterations is available in the ExplainUI dashboard");
|
|
332
|
-
lines.push(" 3. Some issues may require design decisions that go beyond automated fixes");
|
|
333
|
-
lines.push("");
|
|
334
|
-
lines.push("Call explainui_close_project with reason 'all_pages_done' to end this session.");
|
|
335
|
-
}
|
|
336
347
|
}
|
|
337
|
-
|
|
338
|
-
lines.push(
|
|
339
|
-
}
|
|
340
|
-
if (resp.analysis_duration_ms) {
|
|
341
|
-
lines.push("");
|
|
342
|
-
lines.push(`(Analysis took ${resp.analysis_duration_ms}ms)`);
|
|
348
|
+
if (resp.report_url) {
|
|
349
|
+
lines.push(`Full report: ${resp.report_url}`);
|
|
343
350
|
}
|
|
344
351
|
return lines.join("\n");
|
|
345
352
|
}
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -7,6 +7,9 @@ export interface ExplainUISession {
|
|
|
7
7
|
platform: "claude_desktop" | "cursor" | "cline" | "windsurf" | "copilot" | "unknown";
|
|
8
8
|
currentRunId: string | null;
|
|
9
9
|
currentRunNumber: number | null;
|
|
10
|
+
iterationByPage: Record<string, number>;
|
|
11
|
+
selectedPages: string[] | null;
|
|
12
|
+
skippedPages: string[];
|
|
10
13
|
}
|
|
11
14
|
export interface ProjectConfig {
|
|
12
15
|
project_id: string;
|
|
@@ -15,6 +18,10 @@ export interface ProjectConfig {
|
|
|
15
18
|
constraint_bundle: ConstraintBundle;
|
|
16
19
|
trigger_threshold: "every_change" | "major_features" | "manual_only";
|
|
17
20
|
fetched_at: number;
|
|
21
|
+
tier: string;
|
|
22
|
+
analyses_remaining: number;
|
|
23
|
+
analyses_limit: number;
|
|
24
|
+
last_run_page_keys: string[];
|
|
18
25
|
}
|
|
19
26
|
export interface PageConfig {
|
|
20
27
|
page_key: string;
|
|
@@ -232,6 +239,8 @@ export interface AnalyzeResponse {
|
|
|
232
239
|
run_id?: string;
|
|
233
240
|
run_number?: number;
|
|
234
241
|
issue_statuses?: Record<string, string>;
|
|
242
|
+
max_iterations_reached?: boolean;
|
|
243
|
+
report_url?: string;
|
|
235
244
|
}
|
|
236
245
|
export interface Issue {
|
|
237
246
|
id: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,QAAQ,EAAE,gBAAgB,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IACrF,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAiDH,2DAA2D;AAC3D,MAAM,CAAC,MAAM,SAAS,GAAkB;IACtC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE;CAChE,CAAC;AAuRF,8EAA8E;AAC9E,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,IAAI,CAAS;IACb,YAAY,IAAY,EAAE,OAAe;QACvC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF"}
|