cbrowser 17.6.1 → 18.1.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/dist/browser.d.ts +4 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +37 -1
- package/dist/browser.js.map +1 -1
- package/dist/cli.js +10 -5
- package/dist/cli.js.map +1 -1
- package/dist/mcp-server-remote.d.ts.map +1 -1
- package/dist/mcp-server-remote.js +3 -1
- package/dist/mcp-server-remote.js.map +1 -1
- package/dist/mcp-tools/base/navigation-tools.d.ts.map +1 -1
- package/dist/mcp-tools/base/navigation-tools.js +33 -12
- package/dist/mcp-tools/base/navigation-tools.js.map +1 -1
- package/dist/mcp-tools/index.d.ts +1 -0
- package/dist/mcp-tools/index.d.ts.map +1 -1
- package/dist/mcp-tools/index.js +2 -0
- package/dist/mcp-tools/index.js.map +1 -1
- package/dist/mcp-tools/screenshot-utils.d.ts +45 -0
- package/dist/mcp-tools/screenshot-utils.d.ts.map +1 -0
- package/dist/mcp-tools/screenshot-utils.js +131 -0
- package/dist/mcp-tools/screenshot-utils.js.map +1 -0
- package/docs/Tool-Cognitive-Journey-Autonomous.md +264 -0
- package/docs/Tool-Competitive-Benchmark.md +287 -0
- package/docs/Tool-Empathy-Audit.md +325 -0
- package/docs/Tool-Hunt-Bugs.md +299 -0
- package/docs/Tool-Marketing-Campaign.md +292 -0
- package/docs/Tool-Persona-Create.md +268 -0
- package/docs/Tools-Accessibility.md +202 -0
- package/docs/Tools-Browser-Automation.md +305 -0
- package/docs/Tools-Cognitive-Journeys.md +227 -0
- package/docs/Tools-Marketing-Intelligence.md +265 -0
- package/docs/Tools-Overview.md +143 -0
- package/docs/Tools-Persona-System.md +294 -0
- package/docs/Tools-Session-State.md +272 -0
- package/docs/Tools-Testing-Quality.md +251 -0
- package/docs/Tools-Utilities.md +176 -0
- package/docs/Tools-Visual-Performance.md +272 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server-remote.d.ts","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AA6BH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAoUpE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/F;AAGD,YAAY,EAAE,uBAAuB,EAAE,CAAC;AAExC;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"mcp-server-remote.d.ts","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AA6BH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAoUpE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/F;AAGD,YAAY,EAAE,uBAAuB,EAAE,CAAC;AAExC;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsM1F"}
|
|
@@ -44,7 +44,7 @@ import { ensureDirectories } from "./config.js";
|
|
|
44
44
|
// Version from package.json - single source of truth
|
|
45
45
|
import { VERSION } from "./version.js";
|
|
46
46
|
// Modular MCP tools (v17.5.0)
|
|
47
|
-
import { registerAllPublicTools } from "./mcp-tools/index.js";
|
|
47
|
+
import { registerAllPublicTools, setRemoteMode } from "./mcp-tools/index.js";
|
|
48
48
|
// Shared browser instance
|
|
49
49
|
let browser = null;
|
|
50
50
|
// Stealth state (enterprise integration)
|
|
@@ -316,6 +316,8 @@ async function handleMcpRequest(req, res, transport) {
|
|
|
316
316
|
export async function startRemoteMcpServer(options) {
|
|
317
317
|
// Auto-initialize all data directories on server start
|
|
318
318
|
ensureDirectories();
|
|
319
|
+
// Enable remote mode for screenshot handling (returns base64 images instead of paths)
|
|
320
|
+
setRemoteMode(true);
|
|
319
321
|
const port = parseInt(process.env.PORT || "3000", 10);
|
|
320
322
|
const host = process.env.HOST || "0.0.0.0";
|
|
321
323
|
const sessionMode = process.env.MCP_SESSION_MODE || "stateless";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server-remote.js","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-server-remote.js","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/base/navigation-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"navigation-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp-tools/base/navigation-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAiDtE;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,EAAE,UAAU,EAAE,EAAE,uBAAuB,GACtC,IAAI,CAyBN"}
|
|
@@ -5,6 +5,32 @@
|
|
|
5
5
|
* @license BSL-1.1 (Business Source License 1.1)
|
|
6
6
|
*/
|
|
7
7
|
import { z } from "zod";
|
|
8
|
+
import { getRemoteMode, screenshotToBase64 } from "../screenshot-utils.js";
|
|
9
|
+
/**
|
|
10
|
+
* Build content array with optional image for remote mode
|
|
11
|
+
*/
|
|
12
|
+
function buildContentWithScreenshot(data, screenshotPath) {
|
|
13
|
+
const content = [
|
|
14
|
+
{
|
|
15
|
+
type: "text",
|
|
16
|
+
text: JSON.stringify(data, null, 2),
|
|
17
|
+
},
|
|
18
|
+
];
|
|
19
|
+
// In remote mode, add image content block for screenshots
|
|
20
|
+
if (getRemoteMode() && screenshotPath) {
|
|
21
|
+
const base64Data = screenshotToBase64(screenshotPath);
|
|
22
|
+
if (base64Data) {
|
|
23
|
+
const base64Only = base64Data.split(",")[1];
|
|
24
|
+
const mimeType = base64Data.split(";")[0].split(":")[1];
|
|
25
|
+
content.push({
|
|
26
|
+
type: "image",
|
|
27
|
+
data: base64Only,
|
|
28
|
+
mimeType: mimeType,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return content;
|
|
33
|
+
}
|
|
8
34
|
/**
|
|
9
35
|
* Register navigation tools (1 tool: navigate)
|
|
10
36
|
*/
|
|
@@ -15,18 +41,13 @@ export function registerNavigationTools(server, { getBrowser }) {
|
|
|
15
41
|
const b = await getBrowser();
|
|
16
42
|
const result = await b.navigate(url);
|
|
17
43
|
return {
|
|
18
|
-
content:
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
loadTime: result.loadTime,
|
|
26
|
-
screenshot: result.screenshot,
|
|
27
|
-
}, null, 2),
|
|
28
|
-
},
|
|
29
|
-
],
|
|
44
|
+
content: buildContentWithScreenshot({
|
|
45
|
+
success: true,
|
|
46
|
+
url: result.url,
|
|
47
|
+
title: result.title,
|
|
48
|
+
loadTime: result.loadTime,
|
|
49
|
+
screenshot: result.screenshot,
|
|
50
|
+
}, result.screenshot),
|
|
30
51
|
};
|
|
31
52
|
});
|
|
32
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/base/navigation-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"navigation-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/base/navigation-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAiB3E;;GAEG;AACH,SAAS,0BAA0B,CACjC,IAA6B,EAC7B,cAAuB;IAEvB,MAAM,OAAO,GAAmB;QAC9B;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;SACpC;KACF,CAAC;IAEF,0DAA0D;IAC1D,IAAI,aAAa,EAAE,IAAI,cAAc,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;QACtD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAiB,EACjB,EAAE,UAAU,EAA2B;IAEvC,MAAM,CAAC,IAAI,CACT,UAAU,EACV,yCAAyC,EACzC;QACE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KACzD,EACD,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QAChB,MAAM,CAAC,GAAG,MAAM,UAAU,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAErC,OAAO;YACL,OAAO,EAAE,0BAA0B,CACjC;gBACE,OAAO,EAAE,IAAI;gBACb,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,EACD,MAAM,CAAC,UAAU,CAClB;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* @license BSL-1.1 (Business Source License 1.1)
|
|
16
16
|
*/
|
|
17
17
|
export type { McpServer, CBrowser, ToolRegistrationContext } from "./types.js";
|
|
18
|
+
export { setRemoteMode, getRemoteMode, transformResponseForRemote, } from "./screenshot-utils.js";
|
|
18
19
|
export { registerBaseTools } from "./base/index.js";
|
|
19
20
|
export { registerNavigationTools, registerInteractionTools, registerExtractionTools, registerAssertionTools, registerAnalysisTools, registerSessionTools, registerHealingTools, registerVisualTestingTools, registerTestingTools, registerBugAnalysisTools, registerPersonaComparisonTools, registerCognitiveTools, registerValuesTools, registerPerformanceTools, registerAuditTools, registerBrowserManagementTools, } from "./base/index.js";
|
|
20
21
|
export { registerPersonaCreationTools } from "./persona-creation-tools.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp-tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAG/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,8BAA8B,GAC/B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAMrE;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,uBAAuB,GAC/B,IAAI,CAYN"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp-tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAG/E,OAAO,EACL,aAAa,EACb,aAAa,EACb,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,8BAA8B,GAC/B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAMrE;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,uBAAuB,GAC/B,IAAI,CAYN"}
|
package/dist/mcp-tools/index.js
CHANGED
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* @copyright 2026 WF Media (Alexandria Eden) alexandria.shai.eden@gmail.com
|
|
15
15
|
* @license BSL-1.1 (Business Source License 1.1)
|
|
16
16
|
*/
|
|
17
|
+
// Re-export screenshot utilities
|
|
18
|
+
export { setRemoteMode, getRemoteMode, transformResponseForRemote, } from "./screenshot-utils.js";
|
|
17
19
|
// Re-export base tools
|
|
18
20
|
export { registerBaseTools } from "./base/index.js";
|
|
19
21
|
// Re-export individual base tool categories for granular use
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp-tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,uBAAuB;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,6DAA6D;AAC7D,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,8BAA8B,GAC/B,MAAM,iBAAiB,CAAC;AAEzB,mCAAmC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAE3E,0BAA0B;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,6BAA6B;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAiB,EACjB,OAAgC;IAEhC,kBAAkB;IAClB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,6BAA6B;IAC7B,4BAA4B,CAAC,MAAM,CAAC,CAAC;IAErC,oBAAoB;IACpB,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAE5B,wBAAwB;IACxB,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp-tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,iCAAiC;AACjC,OAAO,EACL,aAAa,EACb,aAAa,EACb,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAE/B,uBAAuB;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,6DAA6D;AAC7D,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,8BAA8B,GAC/B,MAAM,iBAAiB,CAAC;AAEzB,mCAAmC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAE3E,0BAA0B;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,6BAA6B;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAiB,EACjB,OAAgC;IAEhC,kBAAkB;IAClB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,6BAA6B;IAC7B,4BAA4B,CAAC,MAAM,CAAC,CAAC;IAErC,oBAAoB;IACpB,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAE5B,wBAAwB;IACxB,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CBrowser MCP Tools - Screenshot Utilities
|
|
3
|
+
*
|
|
4
|
+
* Utilities for converting screenshot file paths to inline base64 images
|
|
5
|
+
* for remote MCP mode where claude.ai can't access server filesystem.
|
|
6
|
+
*
|
|
7
|
+
* @copyright 2026 WF Media (Alexandria Eden) alexandria.shai.eden@gmail.com
|
|
8
|
+
* @license BSL-1.1 (Business Source License 1.1)
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* MCP content block types
|
|
12
|
+
*/
|
|
13
|
+
export interface TextContent {
|
|
14
|
+
type: "text";
|
|
15
|
+
text: string;
|
|
16
|
+
}
|
|
17
|
+
export interface ImageContent {
|
|
18
|
+
type: "image";
|
|
19
|
+
data: string;
|
|
20
|
+
mimeType: string;
|
|
21
|
+
}
|
|
22
|
+
export type ContentBlock = TextContent | ImageContent;
|
|
23
|
+
/**
|
|
24
|
+
* Convert a screenshot file path to base64 data URL
|
|
25
|
+
*/
|
|
26
|
+
export declare function screenshotToBase64(filePath: string): string | null;
|
|
27
|
+
/**
|
|
28
|
+
* Transform MCP tool response to include inline images for remote mode.
|
|
29
|
+
*
|
|
30
|
+
* Takes the original content blocks and:
|
|
31
|
+
* 1. Finds any screenshot paths in text/JSON content
|
|
32
|
+
* 2. Converts them to base64
|
|
33
|
+
* 3. Adds MCP image content blocks for each screenshot
|
|
34
|
+
*
|
|
35
|
+
* @param content Original content blocks from tool response
|
|
36
|
+
* @returns Transformed content blocks with inline images
|
|
37
|
+
*/
|
|
38
|
+
export declare function transformResponseForRemote(content: ContentBlock[]): ContentBlock[];
|
|
39
|
+
/**
|
|
40
|
+
* Check if running in remote MCP mode
|
|
41
|
+
*/
|
|
42
|
+
export declare function isRemoteMcpMode(): boolean;
|
|
43
|
+
export declare function setRemoteMode(enabled: boolean): void;
|
|
44
|
+
export declare function getRemoteMode(): boolean;
|
|
45
|
+
//# sourceMappingURL=screenshot-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenshot-utils.d.ts","sourceRoot":"","sources":["../../src/mcp-tools/screenshot-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,YAAY,CAAC;AAEtD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAuBlE;AA2BD;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,YAAY,EAAE,GACtB,YAAY,EAAE,CA2ChB;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAIzC;AAQD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEpD;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CBrowser MCP Tools - Screenshot Utilities
|
|
3
|
+
*
|
|
4
|
+
* Utilities for converting screenshot file paths to inline base64 images
|
|
5
|
+
* for remote MCP mode where claude.ai can't access server filesystem.
|
|
6
|
+
*
|
|
7
|
+
* @copyright 2026 WF Media (Alexandria Eden) alexandria.shai.eden@gmail.com
|
|
8
|
+
* @license BSL-1.1 (Business Source License 1.1)
|
|
9
|
+
*/
|
|
10
|
+
import { readFileSync, existsSync } from "node:fs";
|
|
11
|
+
/**
|
|
12
|
+
* Convert a screenshot file path to base64 data URL
|
|
13
|
+
*/
|
|
14
|
+
export function screenshotToBase64(filePath) {
|
|
15
|
+
try {
|
|
16
|
+
if (!existsSync(filePath)) {
|
|
17
|
+
console.warn(`Screenshot file not found: ${filePath}`);
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
const buffer = readFileSync(filePath);
|
|
21
|
+
const base64 = buffer.toString("base64");
|
|
22
|
+
// Determine mime type from extension
|
|
23
|
+
const ext = filePath.toLowerCase().split(".").pop();
|
|
24
|
+
const mimeType = ext === "jpg" || ext === "jpeg"
|
|
25
|
+
? "image/jpeg"
|
|
26
|
+
: ext === "webp"
|
|
27
|
+
? "image/webp"
|
|
28
|
+
: "image/png";
|
|
29
|
+
return `data:${mimeType};base64,${base64}`;
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
console.warn(`Failed to read screenshot: ${error.message}`);
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Extract screenshot path from a JSON response object (recursively)
|
|
38
|
+
*/
|
|
39
|
+
function findScreenshotPaths(obj, paths = []) {
|
|
40
|
+
if (typeof obj !== "object" || obj === null) {
|
|
41
|
+
return paths;
|
|
42
|
+
}
|
|
43
|
+
if (Array.isArray(obj)) {
|
|
44
|
+
for (const item of obj) {
|
|
45
|
+
findScreenshotPaths(item, paths);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
50
|
+
if (key === "screenshot" && typeof value === "string" && value.startsWith("/")) {
|
|
51
|
+
paths.push(value);
|
|
52
|
+
}
|
|
53
|
+
else if (typeof value === "object") {
|
|
54
|
+
findScreenshotPaths(value, paths);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return paths;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Transform MCP tool response to include inline images for remote mode.
|
|
62
|
+
*
|
|
63
|
+
* Takes the original content blocks and:
|
|
64
|
+
* 1. Finds any screenshot paths in text/JSON content
|
|
65
|
+
* 2. Converts them to base64
|
|
66
|
+
* 3. Adds MCP image content blocks for each screenshot
|
|
67
|
+
*
|
|
68
|
+
* @param content Original content blocks from tool response
|
|
69
|
+
* @returns Transformed content blocks with inline images
|
|
70
|
+
*/
|
|
71
|
+
export function transformResponseForRemote(content) {
|
|
72
|
+
const result = [];
|
|
73
|
+
const addedImages = new Set();
|
|
74
|
+
for (const block of content) {
|
|
75
|
+
if (block.type === "text") {
|
|
76
|
+
try {
|
|
77
|
+
// Try to parse as JSON to find screenshot paths
|
|
78
|
+
const parsed = JSON.parse(block.text);
|
|
79
|
+
const screenshotPaths = findScreenshotPaths(parsed);
|
|
80
|
+
// Add the original text block (keep the path for reference)
|
|
81
|
+
result.push(block);
|
|
82
|
+
// Add image content blocks for each screenshot
|
|
83
|
+
for (const path of screenshotPaths) {
|
|
84
|
+
if (addedImages.has(path))
|
|
85
|
+
continue;
|
|
86
|
+
const base64Data = screenshotToBase64(path);
|
|
87
|
+
if (base64Data) {
|
|
88
|
+
// Extract just the base64 part (without data URL prefix)
|
|
89
|
+
const base64Only = base64Data.split(",")[1];
|
|
90
|
+
const mimeType = base64Data.split(";")[0].split(":")[1];
|
|
91
|
+
result.push({
|
|
92
|
+
type: "image",
|
|
93
|
+
data: base64Only,
|
|
94
|
+
mimeType: mimeType,
|
|
95
|
+
});
|
|
96
|
+
addedImages.add(path);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
// Not JSON, just pass through
|
|
102
|
+
result.push(block);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
// Pass through non-text blocks (including existing images)
|
|
107
|
+
result.push(block);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return result;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Check if running in remote MCP mode
|
|
114
|
+
*/
|
|
115
|
+
export function isRemoteMcpMode() {
|
|
116
|
+
// The remote server sets this, or we can check for HTTP-based transport indicators
|
|
117
|
+
return process.env.MCP_REMOTE_MODE === "true" ||
|
|
118
|
+
process.env.PORT !== undefined;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Global flag to enable remote mode transformations
|
|
122
|
+
* Set by remote MCP server on startup
|
|
123
|
+
*/
|
|
124
|
+
let remoteMode = false;
|
|
125
|
+
export function setRemoteMode(enabled) {
|
|
126
|
+
remoteMode = enabled;
|
|
127
|
+
}
|
|
128
|
+
export function getRemoteMode() {
|
|
129
|
+
return remoteMode;
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=screenshot-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenshot-utils.js","sourceRoot":"","sources":["../../src/mcp-tools/screenshot-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAkBnD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEzC,qCAAqC;QACrC,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM;YAC9C,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,GAAG,KAAK,MAAM;gBACd,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,WAAW,CAAC;QAElB,OAAO,QAAQ,QAAQ,WAAW,MAAM,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,8BAA+B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAY,EAAE,QAAkB,EAAE;IAC7D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACvB,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,IAAI,GAAG,KAAK,YAAY,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/E,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAuB;IAEvB,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,gDAAgD;gBAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtC,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAEpD,4DAA4D;gBAC5D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEnB,+CAA+C;gBAC/C,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;oBACnC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;wBAAE,SAAS;oBAEpC,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;oBAC5C,IAAI,UAAU,EAAE,CAAC;wBACf,yDAAyD;wBACzD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBAExD,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,UAAU;4BAChB,QAAQ,EAAE,QAAQ;yBACnB,CAAC,CAAC;wBACH,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,8BAA8B;gBAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,2DAA2D;YAC3D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,mFAAmF;IACnF,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,MAAM;QACtC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,UAAU,GAAG,OAAO,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
# Cognitive Journey Autonomous
|
|
2
|
+
|
|
3
|
+
**🔒 Enterprise Feature**
|
|
4
|
+
|
|
5
|
+
**Set a goal. Watch a simulated user try to achieve it. Learn where they give up.**
|
|
6
|
+
|
|
7
|
+
`cognitive_journey_autonomous` runs a complete user journey with AI making all navigation decisions. No orchestration needed — just specify a persona, goal, and starting URL. The AI experiences your site the way a real user would, complete with frustration, confusion, and the moment they decide to leave.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
{
|
|
15
|
+
"persona": "first-timer",
|
|
16
|
+
"startUrl": "https://example.com",
|
|
17
|
+
"goal": "Sign up for a free trial",
|
|
18
|
+
"maxSteps": 30,
|
|
19
|
+
"vision": true
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**What happens**:
|
|
24
|
+
1. AI loads the persona's cognitive profile (25 traits)
|
|
25
|
+
2. AI perceives the page as that persona would
|
|
26
|
+
3. AI decides what action to take based on persona's characteristics
|
|
27
|
+
4. After each action, cognitive state updates (patience, confusion, frustration)
|
|
28
|
+
5. If any metric crosses abandonment threshold, journey ends
|
|
29
|
+
6. Final report shows exactly where and why they gave up
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Parameters
|
|
34
|
+
|
|
35
|
+
| Parameter | Type | Required | Default | Description |
|
|
36
|
+
|-----------|------|----------|---------|-------------|
|
|
37
|
+
| `persona` | string | Yes | — | Persona ID (e.g., `first-timer`, `elderly-user`, `cognitive-adhd`) |
|
|
38
|
+
| `startUrl` | string | Yes | — | URL where the journey begins |
|
|
39
|
+
| `goal` | string | Yes | — | What the persona is trying to accomplish |
|
|
40
|
+
| `maxSteps` | number | No | 50 | Maximum actions before stopping |
|
|
41
|
+
| `maxTime` | number | No | 300 | Maximum time in seconds |
|
|
42
|
+
| `vision` | boolean | No | false | Send screenshots to AI for visual analysis |
|
|
43
|
+
| `headless` | boolean | No | false | Run without visible browser window |
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Vision Mode
|
|
48
|
+
|
|
49
|
+
When `vision: true`, the AI receives screenshots at each step, enabling:
|
|
50
|
+
|
|
51
|
+
- **Understanding visual layouts** that aren't captured in DOM text
|
|
52
|
+
- **Navigating dropdown menus** that require hover states
|
|
53
|
+
- **Reading non-semantic content** (images with text, icons without labels)
|
|
54
|
+
- **Perceiving visual hierarchy** the way humans do
|
|
55
|
+
|
|
56
|
+
Vision mode consumes more API credits but dramatically improves accuracy on complex sites.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Use Cases
|
|
61
|
+
|
|
62
|
+
### 1. Onboarding Flow Validation
|
|
63
|
+
|
|
64
|
+
**Goal**: Verify that new users can complete signup without confusion.
|
|
65
|
+
|
|
66
|
+
```json
|
|
67
|
+
{
|
|
68
|
+
"persona": "first-timer",
|
|
69
|
+
"startUrl": "https://app.example.com",
|
|
70
|
+
"goal": "Create an account and reach the dashboard",
|
|
71
|
+
"vision": true
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**What you learn**: Where first-timers get lost, which steps deplete patience, what causes confusion.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### 2. Accessibility Impact Testing
|
|
80
|
+
|
|
81
|
+
**Goal**: Understand how accessibility issues affect real task completion.
|
|
82
|
+
|
|
83
|
+
```json
|
|
84
|
+
{
|
|
85
|
+
"persona": "motor-tremor",
|
|
86
|
+
"startUrl": "https://example.com/checkout",
|
|
87
|
+
"goal": "Complete a purchase",
|
|
88
|
+
"vision": true,
|
|
89
|
+
"maxSteps": 40
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**What you learn**: Which interactions are impossible with motor impairment, where the user gives up.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
### 3. Mobile UX Validation
|
|
98
|
+
|
|
99
|
+
**Goal**: Test if the mobile experience works for impatient users.
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"persona": "impatient-user",
|
|
104
|
+
"startUrl": "https://m.example.com",
|
|
105
|
+
"goal": "Find pricing information"
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**What you learn**: Whether navigation is fast enough for users with low patience tolerance.
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
### 4. Competitive Research
|
|
114
|
+
|
|
115
|
+
**Goal**: See how different user types experience a competitor's site.
|
|
116
|
+
|
|
117
|
+
```json
|
|
118
|
+
{
|
|
119
|
+
"persona": "enterprise-buyer",
|
|
120
|
+
"startUrl": "https://competitor.com",
|
|
121
|
+
"goal": "Request a demo",
|
|
122
|
+
"vision": true
|
|
123
|
+
}
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**What you learn**: Friction points in their conversion funnel that you can avoid.
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## How It Works
|
|
131
|
+
|
|
132
|
+
### Decision-Making Process
|
|
133
|
+
|
|
134
|
+
At each step, the AI:
|
|
135
|
+
|
|
136
|
+
1. **Perceives the page** — What elements are visible? What can be interacted with?
|
|
137
|
+
2. **Applies persona traits** — A curious user explores sidebars. An impatient user seeks the fastest path.
|
|
138
|
+
3. **Evaluates options** — Rank possible actions by likelihood of achieving goal
|
|
139
|
+
4. **Makes a decision** — Choose action based on persona's risk tolerance, comprehension, etc.
|
|
140
|
+
5. **Updates state** — Adjust patience, confusion, frustration based on what happened
|
|
141
|
+
|
|
142
|
+
### Abandonment Logic
|
|
143
|
+
|
|
144
|
+
The persona abandons when:
|
|
145
|
+
|
|
146
|
+
| Trigger | Threshold | Inner Monologue |
|
|
147
|
+
|---------|-----------|-----------------|
|
|
148
|
+
| Patience depleted | < 0.1 | "This is taking forever, I'm done." |
|
|
149
|
+
| Too confused | > 0.8 for 30s | "I have no idea what to do here." |
|
|
150
|
+
| Too frustrated | > 0.85 | "This is ridiculous." |
|
|
151
|
+
| No progress | 10+ steps, < 0.1 progress | "I'm not getting anywhere." |
|
|
152
|
+
| Stuck in loop | Same page 3+ times | "I keep ending up back here." |
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Output
|
|
157
|
+
|
|
158
|
+
```json
|
|
159
|
+
{
|
|
160
|
+
"journeyId": "journey_abc123",
|
|
161
|
+
"persona": "first-timer",
|
|
162
|
+
"goal": "Sign up for a free trial",
|
|
163
|
+
"outcome": "abandoned",
|
|
164
|
+
"goalAchieved": false,
|
|
165
|
+
"totalSteps": 18,
|
|
166
|
+
"totalTime": 142,
|
|
167
|
+
"abandonmentPoint": {
|
|
168
|
+
"url": "https://example.com/signup/step-2",
|
|
169
|
+
"action": "Attempted to fill 'Company Size' dropdown",
|
|
170
|
+
"reason": "confusion_threshold_exceeded",
|
|
171
|
+
"innerMonologue": "I don't know what to pick here. The options don't match my situation."
|
|
172
|
+
},
|
|
173
|
+
"finalState": {
|
|
174
|
+
"patience": 0.23,
|
|
175
|
+
"confusion": 0.82,
|
|
176
|
+
"frustration": 0.67
|
|
177
|
+
},
|
|
178
|
+
"frictionPoints": [
|
|
179
|
+
{
|
|
180
|
+
"step": 5,
|
|
181
|
+
"url": "https://example.com/signup",
|
|
182
|
+
"issue": "Password requirements unclear until submission",
|
|
183
|
+
"patienceImpact": -0.12
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"step": 12,
|
|
187
|
+
"url": "https://example.com/signup/step-2",
|
|
188
|
+
"issue": "Dropdown options don't include 'Individual/Freelancer'",
|
|
189
|
+
"confusionImpact": 0.25
|
|
190
|
+
}
|
|
191
|
+
],
|
|
192
|
+
"decisionTrace": [
|
|
193
|
+
{
|
|
194
|
+
"step": 1,
|
|
195
|
+
"thought": "I need to find where to sign up",
|
|
196
|
+
"action": "click",
|
|
197
|
+
"target": "Get Started button",
|
|
198
|
+
"confidence": 0.9
|
|
199
|
+
}
|
|
200
|
+
// ... full trace of every decision
|
|
201
|
+
],
|
|
202
|
+
"screenshots": [
|
|
203
|
+
{
|
|
204
|
+
"step": 12,
|
|
205
|
+
"label": "abandonment_point",
|
|
206
|
+
"base64": "..."
|
|
207
|
+
}
|
|
208
|
+
]
|
|
209
|
+
}
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## Tips & Best Practices
|
|
215
|
+
|
|
216
|
+
### Choose the Right Persona
|
|
217
|
+
|
|
218
|
+
| If you want to test... | Use this persona |
|
|
219
|
+
|------------------------|------------------|
|
|
220
|
+
| General usability | `first-timer` |
|
|
221
|
+
| Speed and efficiency | `power-user` or `impatient-user` |
|
|
222
|
+
| Mobile experience | `mobile-user` |
|
|
223
|
+
| Accessibility | `motor-tremor`, `low-vision`, `cognitive-adhd` |
|
|
224
|
+
| Enterprise sales funnel | `enterprise-buyer` |
|
|
225
|
+
| Consumer checkout | `impulse-shopper` or `price-researcher` |
|
|
226
|
+
|
|
227
|
+
### Set Appropriate Limits
|
|
228
|
+
|
|
229
|
+
- **Simple flows**: `maxSteps: 20`, `maxTime: 120`
|
|
230
|
+
- **Complex flows**: `maxSteps: 50`, `maxTime: 300`
|
|
231
|
+
- **Exploratory**: `maxSteps: 100`, `maxTime: 600`
|
|
232
|
+
|
|
233
|
+
### Interpret Results
|
|
234
|
+
|
|
235
|
+
- **Goal achieved quickly** → Good UX for this persona
|
|
236
|
+
- **Goal achieved with high frustration** → Success but poor experience
|
|
237
|
+
- **Abandoned early** → Critical friction point
|
|
238
|
+
- **Abandoned late** → Death by a thousand cuts
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## Why This Requires Enterprise
|
|
243
|
+
|
|
244
|
+
`cognitive_journey_autonomous` runs AI decision-making at every step, which:
|
|
245
|
+
|
|
246
|
+
1. **Consumes Anthropic API credits** — Each step requires AI inference
|
|
247
|
+
2. **Requires secure API key storage** — Keys must be managed properly
|
|
248
|
+
3. **Uses significant compute** — Vision mode processes screenshots
|
|
249
|
+
|
|
250
|
+
Demo users can still run cognitive journeys using the bridge workflow (`cognitive_journey_init` + `cognitive_journey_update_state`), where Claude orchestrates each step manually.
|
|
251
|
+
|
|
252
|
+
[Contact for Enterprise →](mailto:alexandria.shai.eden@gmail.com)
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Related Tools
|
|
257
|
+
|
|
258
|
+
- [`cognitive_journey_init`](/docs/Tools-Cognitive-Journeys/) — Start orchestrated journeys
|
|
259
|
+
- [`compare_personas`](/docs/Tools-Cognitive-Journeys/) — Compare multiple personas
|
|
260
|
+
- [`empathy_audit`](/docs/Tool-Empathy-Audit/) — Accessibility-focused simulation
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
*Last updated: v17.6.0*
|