@sellable/mcp 0.1.65 → 0.1.66
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/package.json
CHANGED
|
@@ -9,7 +9,7 @@ visibility: internal
|
|
|
9
9
|
<role>
|
|
10
10
|
You are the create-campaign-v2 orchestrator. Your job is to execute the
|
|
11
11
|
configured `core/flow.v2.json` state machine from scratch: (1) interview the
|
|
12
|
-
user and create `brief
|
|
12
|
+
user and create `brief.md`, (2) validate the chained Phase 84 draft artifacts,
|
|
13
13
|
(3) run a message-review gate, show the user an approval packet and commit
|
|
14
14
|
gate, and (4) if the user
|
|
15
15
|
approves, atomically mint a real `CampaignOffer` and hand off to the bounded
|
|
@@ -34,8 +34,8 @@ The JSON flow is the source of truth for stage order, `requiredArtifacts`,
|
|
|
34
34
|
replace them.
|
|
35
35
|
|
|
36
36
|
Each stage writes its own artifact into the draft directory before the next
|
|
37
|
-
stage starts. `brief
|
|
38
|
-
|
|
37
|
+
stage starts. `brief.md` is the single customer-facing brief and canonical
|
|
38
|
+
downstream campaign thesis input.
|
|
39
39
|
|
|
40
40
|
After validation artifacts are complete, show the user a commit gate with 6
|
|
41
41
|
choices (approve / revise-brief / revise-leads / revise-rubric /
|
|
@@ -51,7 +51,6 @@ Validated draft directory:
|
|
|
51
51
|
|
|
52
52
|
```text
|
|
53
53
|
.sellable/create-campaign-v2/drafts/{workspace-slug}/{campaign-slug}/
|
|
54
|
-
brief-v1.md
|
|
55
54
|
brief.md
|
|
56
55
|
lead-review.md
|
|
57
56
|
lead-sample.json
|
|
@@ -362,6 +361,10 @@ me`, `I’ll paste a different sender profile`, and `Other / custom`.
|
|
|
362
361
|
Approval options should refer to what the user just read, e.g. `Approve this
|
|
363
362
|
brief`, `Revise target`, `Revise offer/proof`, and `Other / custom`.
|
|
364
363
|
Include an `Open artifact:` link to `brief.md` before the approval question.
|
|
364
|
+
The visible brief must come before local persistence chrome. After the brief
|
|
365
|
+
is synthesized, render the approval-ready brief in chat before running visible
|
|
366
|
+
`mkdir`, `Write`, artifact-copy, or similar local draft setup. File/folder
|
|
367
|
+
creation is not the user's value moment; the brief is.
|
|
365
368
|
|
|
366
369
|
- After the brief is approved or auto-confirmed, show the next progress line:
|
|
367
370
|
`Cool. Now I'm going to find people who are both a good fit and likely to
|
|
@@ -390,13 +393,13 @@ should test for this campaign. Those can run in parallel and usually take
|
|
|
390
393
|
|
|
391
394
|
- In hosted/rehearsal runs, `Bash` is only for safe local draft-directory
|
|
392
395
|
housekeeping before approval: `mkdir`, `ls`, `find`, `test`, `pwd`, `echo`,
|
|
393
|
-
|
|
396
|
+
or `cat` inside the repo. Do not use
|
|
394
397
|
Bash to run interpreters/scripts (`python`, `node`, `npm`, `pnpm`, `yarn`,
|
|
395
398
|
`npx`), call APIs, query databases, inspect prompt dumps, run git, or
|
|
396
399
|
synthesize artifact content. Use `Read`/`Write`/`Edit` for artifact files and
|
|
397
400
|
MCP tools for product actions.
|
|
398
|
-
- `brief
|
|
399
|
-
|
|
401
|
+
- `brief.md` is the single user-facing brief and stable downstream thesis
|
|
402
|
+
source.
|
|
400
403
|
- `lead-review.md` and `lead-sample.json` are the required outputs of `find leads`.
|
|
401
404
|
- `lead-filter.md` is the primary output of `filter leads`.
|
|
402
405
|
- `rubric.json` is optional and secondary to `lead-filter.md`.
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
],
|
|
13
13
|
"events": [
|
|
14
14
|
"bootstrap_complete",
|
|
15
|
-
"
|
|
15
|
+
"brief_ready",
|
|
16
16
|
"source_intake_ready",
|
|
17
17
|
"user_brief_confirmed",
|
|
18
18
|
"lead_review_ready",
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
"campaignBrief": "~1-2 min"
|
|
140
140
|
},
|
|
141
141
|
"forbiddenWording": [
|
|
142
|
-
"brief
|
|
142
|
+
"brief.md",
|
|
143
143
|
"lead-review.md",
|
|
144
144
|
"lead-sample.json",
|
|
145
145
|
"message-validation.md"
|
|
@@ -150,14 +150,24 @@
|
|
|
150
150
|
"target": "create-campaign-brief"
|
|
151
151
|
},
|
|
152
152
|
{
|
|
153
|
-
"action": "
|
|
154
|
-
"
|
|
153
|
+
"action": "render_brief_preview_before_artifact_write",
|
|
154
|
+
"requiredVisibleContent": [
|
|
155
|
+
"Campaign brief",
|
|
156
|
+
"Decision",
|
|
157
|
+
"Target",
|
|
158
|
+
"Pain",
|
|
159
|
+
"Offer",
|
|
160
|
+
"Proof",
|
|
161
|
+
"Lead plan",
|
|
162
|
+
"Risks",
|
|
163
|
+
"After approval"
|
|
164
|
+
],
|
|
165
|
+
"mustRunBefore": ["write_artifact", "Bash", "mkdir"],
|
|
166
|
+
"chatRenderRule": "After synthesizing the brief, render the approval-ready brief in chat before any visible local folder creation, file write, or artifact copy. The user should see useful brief content before local persistence chrome. Do not ask the user to approve a hidden artifact."
|
|
155
167
|
},
|
|
156
168
|
{
|
|
157
|
-
"action": "
|
|
158
|
-
"
|
|
159
|
-
"to": "brief.md",
|
|
160
|
-
"reason": "brief.md remains the canonical downstream artifact name"
|
|
169
|
+
"action": "write_artifact",
|
|
170
|
+
"artifact": "brief.md"
|
|
161
171
|
},
|
|
162
172
|
{
|
|
163
173
|
"action": "ask_source_intake_after_strategy_batch",
|
|
@@ -183,7 +193,7 @@
|
|
|
183
193
|
}
|
|
184
194
|
],
|
|
185
195
|
"requiredArtifacts": [],
|
|
186
|
-
"producesArtifacts": ["brief
|
|
196
|
+
"producesArtifacts": ["brief.md"],
|
|
187
197
|
"allowedTools": [
|
|
188
198
|
"get_subskill_prompt",
|
|
189
199
|
"get_subskill_asset",
|
|
@@ -211,9 +221,9 @@
|
|
|
211
221
|
"start_campaign"
|
|
212
222
|
],
|
|
213
223
|
"watchRequired": false,
|
|
214
|
-
"waitFor": ["
|
|
224
|
+
"waitFor": ["brief_ready", "confirm_with_user"],
|
|
215
225
|
"transitions": {
|
|
216
|
-
"
|
|
226
|
+
"brief_ready": "brief-review",
|
|
217
227
|
"confirm_with_user": "brief-review"
|
|
218
228
|
},
|
|
219
229
|
"optionalProducesArtifacts": ["lead-source-intake.json"]
|
|
@@ -224,7 +234,7 @@
|
|
|
224
234
|
"onEnter": [
|
|
225
235
|
{
|
|
226
236
|
"action": "show_brief_summary",
|
|
227
|
-
"artifact": "brief
|
|
237
|
+
"artifact": "brief.md"
|
|
228
238
|
},
|
|
229
239
|
{
|
|
230
240
|
"action": "render_brief_approval_checkpoint",
|
|
@@ -243,7 +253,7 @@
|
|
|
243
253
|
"then I will find good-fit leads"
|
|
244
254
|
],
|
|
245
255
|
"minimumVisibleBriefDetail": "full_readable_brief_before_question",
|
|
246
|
-
"requiredArtifactLinks": ["brief
|
|
256
|
+
"requiredArtifactLinks": ["brief.md"],
|
|
247
257
|
"artifactLinkTiming": "before_approval_question",
|
|
248
258
|
"avoidQuestionWhenOnlyUsefulAnswerIs": "looks good"
|
|
249
259
|
},
|
|
@@ -257,7 +267,7 @@
|
|
|
257
267
|
}
|
|
258
268
|
}
|
|
259
269
|
],
|
|
260
|
-
"requiredArtifacts": ["brief
|
|
270
|
+
"requiredArtifacts": ["brief.md"],
|
|
261
271
|
"producesArtifacts": [],
|
|
262
272
|
"allowedTools": [
|
|
263
273
|
"AskUserQuestion",
|
|
@@ -326,7 +336,7 @@
|
|
|
326
336
|
"artifacts": ["lead-review.md", "lead-sample.json"]
|
|
327
337
|
}
|
|
328
338
|
],
|
|
329
|
-
"requiredArtifacts": ["brief
|
|
339
|
+
"requiredArtifacts": ["brief.md"],
|
|
330
340
|
"producesArtifacts": ["lead-review.md", "lead-sample.json"],
|
|
331
341
|
"allowedTools": [
|
|
332
342
|
"get_subskill_prompt",
|