@sellable/mcp 0.1.246 → 0.1.247
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/index-dev.js +0 -0
- package/dist/index.js +0 -0
- package/dist/tools/campaigns.js +20 -5
- package/package.json +1 -1
- package/skills/create-campaign/SKILL.md +15 -11
- package/skills/create-campaign-v2/SOUL.md +10 -6
- package/skills/create-campaign-v2/references/watch-link-handoff.md +10 -6
- package/skills/research/config.json +0 -9
package/dist/index-dev.js
CHANGED
|
File without changes
|
package/dist/index.js
CHANGED
|
File without changes
|
package/dist/tools/campaigns.js
CHANGED
|
@@ -49,16 +49,31 @@ function getCampaignBuilderWatchModeFromUrl(watchUrl) {
|
|
|
49
49
|
export function getCampaignBuilderWatchModeDriverLabel(mode = getCampaignBuilderWatchModeParam()) {
|
|
50
50
|
return mode === "codex" ? "Codex" : "Claude Code";
|
|
51
51
|
}
|
|
52
|
+
function buildWatchHandoffHeadlineBox(headline) {
|
|
53
|
+
const width = 52;
|
|
54
|
+
const visibleHeadline = headline.length > width ? headline.slice(0, width) : headline;
|
|
55
|
+
const padding = Math.max(width - visibleHeadline.length, 0);
|
|
56
|
+
const left = Math.floor(padding / 2);
|
|
57
|
+
const right = padding - left;
|
|
58
|
+
const border = `+${"-".repeat(width + 2)}+`;
|
|
59
|
+
return [
|
|
60
|
+
"```",
|
|
61
|
+
border,
|
|
62
|
+
`| ${" ".repeat(left)}${visibleHeadline}${" ".repeat(right)} |`,
|
|
63
|
+
border,
|
|
64
|
+
"```",
|
|
65
|
+
].join("\n");
|
|
66
|
+
}
|
|
52
67
|
export function buildCampaignWatchHandoffMarkdown(watchUrl, mode = getCampaignBuilderWatchModeFromUrl(watchUrl) ??
|
|
53
68
|
getCampaignBuilderWatchModeParam()) {
|
|
54
69
|
const driverLabel = getCampaignBuilderWatchModeDriverLabel(mode);
|
|
55
70
|
const headline = `WATCH ${driverLabel.toUpperCase()} BUILD THE CAMPAIGN LIVE`;
|
|
56
71
|
return [
|
|
57
|
-
|
|
58
|
-
"
|
|
59
|
-
|
|
60
|
-
"
|
|
61
|
-
"
|
|
72
|
+
buildWatchHandoffHeadlineBox(headline),
|
|
73
|
+
"",
|
|
74
|
+
`[Open live campaign builder](${watchUrl})`,
|
|
75
|
+
"",
|
|
76
|
+
"Keep this chat open. I'll ask approval questions here before making decisions that need your judgment.",
|
|
62
77
|
].join("\n");
|
|
63
78
|
}
|
|
64
79
|
function buildCampaignBuilderWatchPath(campaignId) {
|
package/package.json
CHANGED
|
@@ -409,19 +409,23 @@ automation just because a watch link exists. If `create_campaign` returns
|
|
|
409
409
|
approval question. It will use the URL mode to say Codex or Claude Code:
|
|
410
410
|
|
|
411
411
|
````markdown
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
412
|
+
```
|
|
413
|
+
+------------------------------------------------------+
|
|
414
|
+
| WATCH CODEX BUILD THE CAMPAIGN LIVE |
|
|
415
|
+
+------------------------------------------------------+
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
[Open live campaign builder]({watchUrl})
|
|
419
|
+
|
|
420
|
+
Keep this chat open. I'll ask approval questions here before making decisions
|
|
421
|
+
that need your judgment.
|
|
418
422
|
````
|
|
419
423
|
|
|
420
|
-
The
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
browser-opening instruction.
|
|
424
|
+
The ASCII banner is intentional because it is unmissable in both Codex and plain
|
|
425
|
+
terminals. Only the banner should be fenced/preformatted; keep the Markdown link
|
|
426
|
+
and chat note outside the fence so rendered chat clients still expose a normal
|
|
427
|
+
click target. Do not add a code-fence language label, replace the link with a
|
|
428
|
+
shell command, or add a browser-opening instruction.
|
|
425
429
|
|
|
426
430
|
The watch link should auto-login through the token in the URL. If the user says
|
|
427
431
|
the link lands on auth, 404, permission, blank, or a visible error state, recover
|
|
@@ -341,12 +341,16 @@ approve/revise recommendation, not fallback samples, concerns, or a QA receipt.
|
|
|
341
341
|
Be explicit about what has and has not happened:
|
|
342
342
|
|
|
343
343
|
````markdown
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
344
|
+
```
|
|
345
|
+
+------------------------------------------------------+
|
|
346
|
+
| WATCH CODEX BUILD THE CAMPAIGN LIVE |
|
|
347
|
+
+------------------------------------------------------+
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
[Open live campaign builder]({watchUrl})
|
|
351
|
+
|
|
352
|
+
Keep this chat open. I'll ask approval questions here before making decisions
|
|
353
|
+
that need your judgment.
|
|
350
354
|
````
|
|
351
355
|
|
|
352
356
|
Print that watch-link handoff only once before the brief approval question, and
|
|
@@ -39,12 +39,16 @@ useful brief instead of an empty campaign.
|
|
|
39
39
|
Example skeleton:
|
|
40
40
|
|
|
41
41
|
````markdown
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
42
|
+
```
|
|
43
|
+
+------------------------------------------------------+
|
|
44
|
+
| WATCH CODEX BUILD THE CAMPAIGN LIVE |
|
|
45
|
+
+------------------------------------------------------+
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
[Open live campaign builder]({watchUrl})
|
|
49
|
+
|
|
50
|
+
Keep this chat open. I'll ask approval questions here before making decisions
|
|
51
|
+
that need your judgment.
|
|
48
52
|
|
|
49
53
|
Now ask the brief approval question. Do not show the approve/revise question
|
|
50
54
|
panel until the full brief content and this exact watch-link handoff have
|