@apex-inc/mcp-server 0.1.1 → 0.3.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/api-client.d.ts +3 -0
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +25 -1
- package/dist/api-client.js.map +1 -1
- package/dist/index.js +12 -3
- package/dist/index.js.map +1 -1
- package/dist/resources.d.ts.map +1 -1
- package/dist/resources.js +17 -3
- package/dist/resources.js.map +1 -1
- package/dist/tools.d.ts +46 -0
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +154 -33
- package/dist/tools.js.map +1 -1
- package/package.json +1 -1
package/dist/api-client.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
export declare function setActiveProject(projectKey: string): void;
|
|
2
|
+
export declare function getActiveProject(): string | undefined;
|
|
3
|
+
export declare function sendStartupPing(): Promise<void>;
|
|
1
4
|
export declare function apiGet<T>(path: string): Promise<T>;
|
|
2
5
|
export declare function apiPost<T>(path: string, body: unknown): Promise<T>;
|
|
3
6
|
export declare function apiDelete(path: string): Promise<void>;
|
package/dist/api-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAMA,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,QAElD;AAED,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAErD;AAUD,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAUrD;AAED,wBAAsB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CASxD;AAED,wBAAsB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAWxE;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS3D;AAED,wBAAsB,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAWzE"}
|
package/dist/api-client.js
CHANGED
|
@@ -1,11 +1,35 @@
|
|
|
1
|
-
|
|
1
|
+
// Resolve the Apex API URL. Supports APEX_URL and APEX_API_URL env vars,
|
|
2
|
+
// with fallback to localhost. When the user migrates to a custom domain
|
|
3
|
+
// (e.g. apex.inc), they only need to update this env var in their MCP config.
|
|
4
|
+
const BASE_URL = process.env.APEX_URL || process.env.APEX_API_URL || "http://localhost:3001";
|
|
5
|
+
let activeProjectKey = process.env.APEX_PROJECT_KEY;
|
|
6
|
+
export function setActiveProject(projectKey) {
|
|
7
|
+
activeProjectKey = projectKey;
|
|
8
|
+
}
|
|
9
|
+
export function getActiveProject() {
|
|
10
|
+
return activeProjectKey;
|
|
11
|
+
}
|
|
2
12
|
function authHeaders() {
|
|
3
13
|
const key = process.env.APEX_API_KEY;
|
|
4
14
|
const headers = { "x-apex-source": "mcp-server" };
|
|
5
15
|
if (key)
|
|
6
16
|
headers["x-api-key"] = key;
|
|
17
|
+
if (activeProjectKey)
|
|
18
|
+
headers["x-apex-project"] = activeProjectKey;
|
|
7
19
|
return headers;
|
|
8
20
|
}
|
|
21
|
+
export async function sendStartupPing() {
|
|
22
|
+
try {
|
|
23
|
+
await fetch(`${BASE_URL}/api/mcp-ping`, {
|
|
24
|
+
method: "POST",
|
|
25
|
+
headers: { "Content-Type": "application/json", ...authHeaders() },
|
|
26
|
+
body: JSON.stringify({ projectKey: activeProjectKey, source: "startup" }),
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
// fire-and-forget — don't block server startup
|
|
31
|
+
}
|
|
32
|
+
}
|
|
9
33
|
export async function apiGet(path) {
|
|
10
34
|
const res = await fetch(`${BASE_URL}${path}`, {
|
|
11
35
|
headers: { ...authHeaders() },
|
package/dist/api-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -5,9 +5,17 @@ import { z } from "zod";
|
|
|
5
5
|
import { toolDefinitions } from "./tools.js";
|
|
6
6
|
import { resourceDefinitions } from "./resources.js";
|
|
7
7
|
import { promptDefinitions } from "./prompts.js";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
import { sendStartupPing } from "./api-client.js";
|
|
9
|
+
const server = new McpServer({ name: "apex", version: "0.3.0" }, {
|
|
10
|
+
instructions: [
|
|
11
|
+
"You are connected to the Apex growth platform.",
|
|
12
|
+
"When a user mentions experiments, or at the start of a conversation about their product,",
|
|
13
|
+
"check for experiments that need attention using list_experiments.",
|
|
14
|
+
"If any experiments show PENDING GRADUATION, proactively mention them and offer to",
|
|
15
|
+
"make the winning changes permanent using graduate_experiment.",
|
|
16
|
+
"Graduation is optional — the Apex snippet keeps serving the winner — but graduating",
|
|
17
|
+
"removes the runtime dependency and makes the changes part of the source code.",
|
|
18
|
+
].join(" "),
|
|
11
19
|
});
|
|
12
20
|
// --- Register tools ---
|
|
13
21
|
for (const [name, def] of Object.entries(toolDefinitions)) {
|
|
@@ -37,6 +45,7 @@ server.prompt("experiment-review", "Review experiment results, see what you lear
|
|
|
37
45
|
async function main() {
|
|
38
46
|
const transport = new StdioServerTransport();
|
|
39
47
|
await server.connect(transport);
|
|
48
|
+
sendStartupPing();
|
|
40
49
|
}
|
|
41
50
|
main().catch((err) => {
|
|
42
51
|
console.error("Apex MCP server failed to start:", err);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,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,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/resources.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AA8EA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwN/B,CAAC"}
|
package/dist/resources.js
CHANGED
|
@@ -20,17 +20,31 @@ export const resourceDefinitions = {
|
|
|
20
20
|
},
|
|
21
21
|
activeExperiments: {
|
|
22
22
|
uri: "apex://experiments/active",
|
|
23
|
-
name: "Running Experiments",
|
|
24
|
-
description: "
|
|
23
|
+
name: "Running Experiments & Pending Graduations",
|
|
24
|
+
description: "Currently running experiments plus experiments that have been promoted but not yet graduated (need code changes to make permanent)",
|
|
25
25
|
mimeType: "application/json",
|
|
26
26
|
handler: async () => {
|
|
27
27
|
const experiments = await apiGet("/api/experiments");
|
|
28
28
|
const active = experiments.filter((e) => e.status === "running");
|
|
29
|
+
const pendingGraduation = experiments.filter((e) => e.promoted && !e.graduated && !e.graduationDismissed);
|
|
30
|
+
const result = {
|
|
31
|
+
running: active,
|
|
32
|
+
};
|
|
33
|
+
if (pendingGraduation.length > 0) {
|
|
34
|
+
result.pendingGraduation = pendingGraduation.map((e) => ({
|
|
35
|
+
id: e.id,
|
|
36
|
+
name: e.name,
|
|
37
|
+
winner: e.winner,
|
|
38
|
+
promotedAt: e.promotedAt,
|
|
39
|
+
changes: e.winner && e.variants?.[e.winner]?.changes || [],
|
|
40
|
+
hint: `Use graduate_experiment("${e.id}") to get instructions for making these changes permanent.`,
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
29
43
|
return {
|
|
30
44
|
contents: [
|
|
31
45
|
{
|
|
32
46
|
uri: "apex://experiments/active",
|
|
33
|
-
text: JSON.stringify(
|
|
47
|
+
text: JSON.stringify(result, null, 2),
|
|
34
48
|
mimeType: "application/json",
|
|
35
49
|
},
|
|
36
50
|
],
|
package/dist/resources.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -310,6 +310,24 @@ export declare const toolDefinitions: {
|
|
|
310
310
|
}[];
|
|
311
311
|
}>;
|
|
312
312
|
};
|
|
313
|
+
graduate_experiment: {
|
|
314
|
+
description: string;
|
|
315
|
+
schema: z.ZodObject<{
|
|
316
|
+
experimentId: z.ZodString;
|
|
317
|
+
}, "strip", z.ZodTypeAny, {
|
|
318
|
+
experimentId: string;
|
|
319
|
+
}, {
|
|
320
|
+
experimentId: string;
|
|
321
|
+
}>;
|
|
322
|
+
handler: ({ experimentId }: {
|
|
323
|
+
experimentId: string;
|
|
324
|
+
}) => Promise<{
|
|
325
|
+
content: {
|
|
326
|
+
type: "text";
|
|
327
|
+
text: string;
|
|
328
|
+
}[];
|
|
329
|
+
}>;
|
|
330
|
+
};
|
|
313
331
|
record_outcome: {
|
|
314
332
|
description: string;
|
|
315
333
|
schema: z.ZodObject<{
|
|
@@ -474,5 +492,33 @@ export declare const toolDefinitions: {
|
|
|
474
492
|
}[];
|
|
475
493
|
}>;
|
|
476
494
|
};
|
|
495
|
+
list_projects: {
|
|
496
|
+
description: string;
|
|
497
|
+
schema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
498
|
+
handler: () => Promise<{
|
|
499
|
+
content: {
|
|
500
|
+
type: "text";
|
|
501
|
+
text: string;
|
|
502
|
+
}[];
|
|
503
|
+
}>;
|
|
504
|
+
};
|
|
505
|
+
switch_project: {
|
|
506
|
+
description: string;
|
|
507
|
+
schema: z.ZodObject<{
|
|
508
|
+
projectKey: z.ZodString;
|
|
509
|
+
}, "strip", z.ZodTypeAny, {
|
|
510
|
+
projectKey: string;
|
|
511
|
+
}, {
|
|
512
|
+
projectKey: string;
|
|
513
|
+
}>;
|
|
514
|
+
handler: (args: {
|
|
515
|
+
projectKey: string;
|
|
516
|
+
}) => Promise<{
|
|
517
|
+
content: {
|
|
518
|
+
type: "text";
|
|
519
|
+
text: string;
|
|
520
|
+
}[];
|
|
521
|
+
}>;
|
|
522
|
+
};
|
|
477
523
|
};
|
|
478
524
|
//# sourceMappingURL=tools.d.ts.map
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { apiGet, apiPost, apiPatch } from "./api-client.js";
|
|
2
|
+
import { apiGet, apiPost, apiPatch, setActiveProject, getActiveProject } from "./api-client.js";
|
|
3
3
|
const APEX = "∧ Apex";
|
|
4
4
|
export const toolDefinitions = {
|
|
5
5
|
plan_experiment: {
|
|
@@ -419,7 +419,7 @@ export const toolDefinitions = {
|
|
|
419
419
|
},
|
|
420
420
|
},
|
|
421
421
|
list_experiments: {
|
|
422
|
-
description: `${APEX} — List experiments. Archived experiments are hidden by default — pass status "archived" to see them, or "all" to see everything.`,
|
|
422
|
+
description: `${APEX} — List experiments. Archived experiments are hidden by default — pass status "archived" to see them, or "all" to see everything. Experiments that are promoted but not graduated are flagged as PENDING GRADUATION.`,
|
|
423
423
|
schema: z.object({
|
|
424
424
|
status: z
|
|
425
425
|
.enum(["all", "running", "completed", "draft", "paused", "archived"])
|
|
@@ -436,23 +436,38 @@ export const toolDefinitions = {
|
|
|
436
436
|
if (filtered.length === 0) {
|
|
437
437
|
return { content: [{ type: "text", text: `${APEX} No experiments found.` }] };
|
|
438
438
|
}
|
|
439
|
+
const pendingGraduation = filtered.filter((e) => e.promoted && !e.graduated && !e.graduationDismissed);
|
|
439
440
|
const lines = filtered.map((e) => {
|
|
440
441
|
const ctrl = e.results?.control;
|
|
441
442
|
const varB = e.results?.variant_b;
|
|
442
|
-
const
|
|
443
|
+
const isPendingGrad = e.promoted && !e.graduated && !e.graduationDismissed;
|
|
444
|
+
const statusIcon = isPendingGrad
|
|
445
|
+
? "⬆"
|
|
446
|
+
: e.status === "running" ? "●" : e.status === "draft" ? "○" : e.status === "paused" ? "◐" : "◉";
|
|
447
|
+
const statusLabel = isPendingGrad
|
|
448
|
+
? `${e.status}] [PENDING GRADUATION`
|
|
449
|
+
: e.status;
|
|
450
|
+
const changeSummary = isPendingGrad && e.winner && e.variants?.[e.winner]?.changes?.length
|
|
451
|
+
? ` Changes to graduate: ${e.variants[e.winner].changes.map((c) => `"${c.originalValue ?? c.value}" → "${c.value}"`).join(", ")}`
|
|
452
|
+
: "";
|
|
443
453
|
return [
|
|
444
|
-
`${statusIcon} ${e.name} [${
|
|
454
|
+
`${statusIcon} ${e.name} [${statusLabel}]`,
|
|
445
455
|
` ID: ${e.id}`,
|
|
446
456
|
` URL: ${e.targetUrl} | ${e.daysRunning ?? 0}d running`,
|
|
447
457
|
ctrl && varB
|
|
448
458
|
? ` Control: ${ctrl.conversionRate}% CVR (${ctrl.visitors} visitors) | Variant: ${varB.conversionRate}% CVR (${varB.visitors} visitors)`
|
|
449
459
|
: " No results yet",
|
|
450
460
|
e.beliefId ? ` Belief: ${e.beliefId}` : "",
|
|
461
|
+
changeSummary,
|
|
451
462
|
]
|
|
452
463
|
.filter(Boolean)
|
|
453
464
|
.join("\n");
|
|
454
465
|
});
|
|
455
|
-
|
|
466
|
+
let header = `${APEX} Experiments (${filtered.length})`;
|
|
467
|
+
if (pendingGraduation.length > 0) {
|
|
468
|
+
header += ` — ${pendingGraduation.length} pending graduation`;
|
|
469
|
+
}
|
|
470
|
+
return { content: [{ type: "text", text: `${header}\n${"─".repeat(40)}\n\n${lines.join("\n\n")}` }] };
|
|
456
471
|
},
|
|
457
472
|
},
|
|
458
473
|
get_results: {
|
|
@@ -574,21 +589,28 @@ export const toolDefinitions = {
|
|
|
574
589
|
},
|
|
575
590
|
},
|
|
576
591
|
promote_winner: {
|
|
577
|
-
description: `${APEX} —
|
|
592
|
+
description: `${APEX} — Complete an experiment (if still running) and promote the winning variant to 100% traffic. The Apex snippet will serve the winner to all visitors immediately. After promoting, use graduate_experiment to make the changes permanent in the codebase.`,
|
|
578
593
|
schema: z.object({
|
|
579
594
|
experimentId: z.string().describe("The experiment ID"),
|
|
580
595
|
winner: z.enum(["control", "variant_b"]).describe("Which variant won"),
|
|
581
596
|
}),
|
|
582
597
|
handler: async ({ experimentId, winner }) => {
|
|
583
|
-
const
|
|
598
|
+
const existing = await apiGet(`/api/experiments/${experimentId}`);
|
|
599
|
+
if (existing.status !== "completed" || !existing.winner) {
|
|
600
|
+
await apiPatch(`/api/experiments`, {
|
|
601
|
+
id: experimentId,
|
|
602
|
+
status: "completed",
|
|
603
|
+
winner,
|
|
604
|
+
});
|
|
605
|
+
}
|
|
606
|
+
const promoted = await apiPatch(`/api/experiments`, {
|
|
584
607
|
id: experimentId,
|
|
585
|
-
|
|
586
|
-
winner,
|
|
608
|
+
action: "promote",
|
|
587
609
|
});
|
|
588
610
|
let beliefUpdate = "";
|
|
589
|
-
if (
|
|
611
|
+
if (promoted.beliefId) {
|
|
590
612
|
try {
|
|
591
|
-
const result = await apiPost(`/api/beliefs/${
|
|
613
|
+
const result = await apiPost(`/api/beliefs/${promoted.beliefId}/update-confidence`, {
|
|
592
614
|
experimentId,
|
|
593
615
|
outcome: winner === "variant_b" ? "confirmed" : "contradicted",
|
|
594
616
|
metricDelta: winner === "variant_b" ? 0.15 : -0.1,
|
|
@@ -599,28 +621,86 @@ export const toolDefinitions = {
|
|
|
599
621
|
beliefUpdate = "Could not update assumption certainty automatically.";
|
|
600
622
|
}
|
|
601
623
|
}
|
|
602
|
-
const
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
};
|
|
623
|
-
|
|
624
|
+
const winnerVariant = promoted.variants?.[winner];
|
|
625
|
+
const changeSummary = winnerVariant?.changes?.length
|
|
626
|
+
? winnerVariant.changes.map((c) => ` • ${c.type}: "${c.originalValue ?? "(unknown)"}" → "${c.value}" (${c.selector})`).join("\n")
|
|
627
|
+
: " No DOM changes recorded.";
|
|
628
|
+
const nextStep = promoted.mode === "sdk"
|
|
629
|
+
? `Use graduate_experiment("${experimentId}") to get cleanup instructions for removing useApexVariant() conditionals from your code.`
|
|
630
|
+
: `Use graduate_experiment("${experimentId}") to get instructions for making these changes permanent in your source code. The Apex snippet handles serving the winner in the meantime.`;
|
|
631
|
+
const output = [
|
|
632
|
+
`${APEX} Winner promoted!`,
|
|
633
|
+
``,
|
|
634
|
+
`Experiment: ${promoted.name}`,
|
|
635
|
+
`Winner: ${winner}`,
|
|
636
|
+
`Status: All visitors now see the winning variant via the Apex snippet.`,
|
|
637
|
+
``,
|
|
638
|
+
`Winning changes:`,
|
|
639
|
+
changeSummary,
|
|
640
|
+
``,
|
|
641
|
+
beliefUpdate ? `${beliefUpdate}\n` : "",
|
|
642
|
+
`Next step: ${nextStep}`,
|
|
643
|
+
].filter(Boolean).join("\n");
|
|
644
|
+
return { content: [{ type: "text", text: output }] };
|
|
645
|
+
},
|
|
646
|
+
},
|
|
647
|
+
graduate_experiment: {
|
|
648
|
+
description: `${APEX} — Get instructions to make a promoted experiment's winning changes permanent in the codebase. Returns the original values (for searching in source files) and new values (for replacement). After making the edits and deploying, the Apex snippet automatically detects the native changes and marks the experiment as graduated.`,
|
|
649
|
+
schema: z.object({
|
|
650
|
+
experimentId: z.string().describe("The experiment ID to graduate"),
|
|
651
|
+
}),
|
|
652
|
+
handler: async ({ experimentId }) => {
|
|
653
|
+
const recipe = await apiGet(`/api/experiments/${experimentId}/graduation-recipe`);
|
|
654
|
+
if (recipe.mode === "sdk") {
|
|
655
|
+
const output = [
|
|
656
|
+
`${APEX} Graduation Recipe — SDK Mode`,
|
|
657
|
+
``,
|
|
658
|
+
`Experiment: ${recipe.experimentName}`,
|
|
659
|
+
`Winner: ${recipe.winner}`,
|
|
660
|
+
``,
|
|
661
|
+
`Steps:`,
|
|
662
|
+
`1. Search the codebase for useApexVariant("${recipe.experimentId}")`,
|
|
663
|
+
recipe.winner === "variant_b"
|
|
664
|
+
? `2. Replace each variant conditional with ONLY the variant_b branch (remove control)`
|
|
665
|
+
: `2. Replace each variant conditional with ONLY the control branch (remove variant_b)`,
|
|
666
|
+
`3. Remove the useApexVariant import if no other experiments use it`,
|
|
667
|
+
`4. Commit: "Graduate experiment: ${recipe.experimentName} — ${recipe.winner} wins"`,
|
|
668
|
+
`5. Deploy. The Apex snippet will detect the native changes and mark the experiment as graduated.`,
|
|
669
|
+
].join("\n");
|
|
670
|
+
return { content: [{ type: "text", text: output }] };
|
|
671
|
+
}
|
|
672
|
+
const steps = recipe.changes.map((change, i) => {
|
|
673
|
+
const lines = [
|
|
674
|
+
`Change ${i + 1}: ${change.type} on ${change.selector}`,
|
|
675
|
+
];
|
|
676
|
+
if (change.originalValue) {
|
|
677
|
+
lines.push(` Search for: "${change.originalValue}"`);
|
|
678
|
+
lines.push(` Replace with: "${change.value}"`);
|
|
679
|
+
}
|
|
680
|
+
else {
|
|
681
|
+
lines.push(` Apply: "${change.value}" to elements matching ${change.selector}`);
|
|
682
|
+
}
|
|
683
|
+
return lines.join("\n");
|
|
684
|
+
});
|
|
685
|
+
const output = [
|
|
686
|
+
`${APEX} Graduation Recipe — Snippet Mode`,
|
|
687
|
+
``,
|
|
688
|
+
`Experiment: ${recipe.experimentName}`,
|
|
689
|
+
`Winner: ${recipe.winner}`,
|
|
690
|
+
`Target URL: ${recipe.targetUrl}`,
|
|
691
|
+
``,
|
|
692
|
+
`For each change below, search the codebase for the "Search for" text,`,
|
|
693
|
+
`find the source file that renders it, and replace with the new value.`,
|
|
694
|
+
``,
|
|
695
|
+
...steps,
|
|
696
|
+
``,
|
|
697
|
+
`After making all changes:`,
|
|
698
|
+
`• Commit: "Graduate experiment: ${recipe.experimentName} — ${recipe.winner} wins"`,
|
|
699
|
+
`• Deploy the changes.`,
|
|
700
|
+
`• The Apex snippet will detect that the page now natively shows the winning`,
|
|
701
|
+
` content and automatically mark the experiment as graduated.`,
|
|
702
|
+
].join("\n");
|
|
703
|
+
return { content: [{ type: "text", text: output }] };
|
|
624
704
|
},
|
|
625
705
|
},
|
|
626
706
|
record_outcome: {
|
|
@@ -889,5 +969,46 @@ export const toolDefinitions = {
|
|
|
889
969
|
};
|
|
890
970
|
},
|
|
891
971
|
},
|
|
972
|
+
list_projects: {
|
|
973
|
+
description: "List all projects available to your API key. Use this to see which projects you can work with.",
|
|
974
|
+
schema: z.object({}),
|
|
975
|
+
handler: async () => {
|
|
976
|
+
const projects = await apiGet("/api/projects");
|
|
977
|
+
const current = getActiveProject();
|
|
978
|
+
if (!projects.length) {
|
|
979
|
+
return {
|
|
980
|
+
content: [{
|
|
981
|
+
type: "text",
|
|
982
|
+
text: "No projects found for this API key.",
|
|
983
|
+
}],
|
|
984
|
+
};
|
|
985
|
+
}
|
|
986
|
+
const lines = projects.map((p) => {
|
|
987
|
+
const active = p.projectKey === current ? " ← active" : "";
|
|
988
|
+
return ` ${p.projectKey} — ${p.name} (${p.url})${active}`;
|
|
989
|
+
});
|
|
990
|
+
return {
|
|
991
|
+
content: [{
|
|
992
|
+
type: "text",
|
|
993
|
+
text: [`Projects (${projects.length}):`, ...lines].join("\n"),
|
|
994
|
+
}],
|
|
995
|
+
};
|
|
996
|
+
},
|
|
997
|
+
},
|
|
998
|
+
switch_project: {
|
|
999
|
+
description: "Switch the active project for this session. All subsequent API calls will use this project.",
|
|
1000
|
+
schema: z.object({
|
|
1001
|
+
projectKey: z.string().describe("The project key to switch to"),
|
|
1002
|
+
}),
|
|
1003
|
+
handler: async (args) => {
|
|
1004
|
+
setActiveProject(args.projectKey);
|
|
1005
|
+
return {
|
|
1006
|
+
content: [{
|
|
1007
|
+
type: "text",
|
|
1008
|
+
text: `Switched to project: ${args.projectKey}. All subsequent calls will use this project.`,
|
|
1009
|
+
}],
|
|
1010
|
+
};
|
|
1011
|
+
},
|
|
1012
|
+
},
|
|
892
1013
|
};
|
|
893
1014
|
//# sourceMappingURL=tools.js.map
|
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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"}
|