@sellable/install 0.1.148 → 0.1.150

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.
@@ -37,13 +37,13 @@ the branch input.
37
37
 
38
38
  ## Required First Steps
39
39
 
40
- 1. Load the full long-form generate-messages prompt:
40
+ 1. Load the full normal-path message prompt:
41
41
 
42
- `get_subskill_prompt({ subskillName: "generate-messages", offset, limit })`
43
- until `hasMore` is false.
42
+ `get_subskill_prompt({ subskillName: "generate-messages" })`
44
43
 
45
- 2. Use that prompt as the drafting contract. Do not use create-campaign
46
- safety/checklist instructions as a substitute for the full prompt.
44
+ 2. Use that prompt as the drafting contract. Do not use any alternate prompt,
45
+ examples-only shortcut, or create-campaign safety/checklist instructions as a
46
+ substitute for the full message prompt.
47
47
  3. Draft only from the campaign brief, selected source context, and initial
48
48
  campaign-table execution slice rows supplied by the parent.
49
49
  4. Keep the work provisional until the user chooses `Use Template` in Messages.
@@ -57,7 +57,7 @@ Return the following to the parent thread:
57
57
  - one rendered good-fill sample for a plausible passing campaign-table row
58
58
  - one omit/fallback sample when the row signal is not safe
59
59
  - pass/fail notes against the generate-messages quality gates
60
- - compact runtime status: `ready`, `blocked`, `retry-needed`, or `stale`
60
+ - message-draft runtime status: `ready`, `blocked`, `retry-needed`, or `stale`
61
61
  - basis token containing campaign revision/updatedAt, brief hash,
62
62
  `selectedLeadListId`, `workflowTableId`, execution-slice row ids/hash, filter
63
63
  choice, and rubric/filter basis when present
@@ -77,7 +77,7 @@ When reporting branch runtime proof, use this shape under
77
77
  - `runId` or `fallbackId`
78
78
  - `startedAt` and `updatedAt`
79
79
  - `basisToken` and `basis`
80
- - optional `compactOutputRef`, `compactOutput`, and `error`
80
+ - optional `messageDraftOutputRef`, `messageDraftOutput`, and `error`
81
81
 
82
82
  Do not tell the UI to show Message Draft Builder as running unless this proof
83
83
  exists and points at the current non-empty campaign-table execution slice.
@@ -197,7 +197,7 @@
197
197
  "kind": "post-find-leads-scout",
198
198
  "promptFile": "post-find-leads-message-scout.md",
199
199
  "displayName": "Message Draft Builder",
200
- "target": "generate-messages",
200
+ "target": "generate-messages-compact",
201
201
  "inputs": [
202
202
  "campaignId",
203
203
  "campaignBrief",
@@ -225,7 +225,7 @@
225
225
  ]
226
226
  },
227
227
  "claude": {
228
- "description": "Use proactively as Message Draft Builder after confirm_lead_list imports a non-empty bounded review batch; load the full generate-messages prompt and draft only from scoped campaign/tool state.",
228
+ "description": "Use proactively as Message Draft Builder after confirm_lead_list imports a non-empty bounded review batch; load generate-messages-compact and draft only from scoped campaign/tool state.",
229
229
  "model": "inherit",
230
230
  "background": true,
231
231
  "maxTurns": 10,
@@ -43,7 +43,7 @@ sales Claude`; do not treat broad anchor-only lanes like `Claude Code`, `MCP`,
43
43
  5. Promote the first narrow sample set when campaign-attached. If a
44
44
  `campaignOfferId` was supplied, call `select_promising_posts({
45
45
  campaignOfferId, selectionMode: "replace", selections, headlineICPCriteria,
46
- currentStep: "signal-discovery" })` before sampling so the watched Signal
46
+ scrapePlanMode: "all-selected", currentStep: "signal-discovery" })` before sampling so the watched Signal
47
47
  Discovery table shows the promoted posts and the exact posts being tested.
48
48
  Do not move the campaign to `confirm-lead-list`; `import_leads` owns that
49
49
  visible transition after source approval.
@@ -592,7 +592,11 @@ const CREATE_CAMPAIGN_ALLOWED_TOOLS = [
592
592
  "mcp__sellable__check_rubric",
593
593
  "mcp__sellable__create_campaign",
594
594
  "mcp__sellable__save_rubrics",
595
- "mcp__sellable__wait_for_rubric_results",
595
+ "mcp__sellable__get_campaign_table_schema",
596
+ "mcp__sellable__select_campaign_cells",
597
+ "mcp__sellable__queue_campaign_cells",
598
+ "mcp__sellable__wait_for_campaign_processing",
599
+ "mcp__sellable__revise_message_template_and_rerun",
596
600
  "mcp__sellable__update_campaign_brief",
597
601
  "mcp__sellable__update_campaign",
598
602
  "mcp__sellable__get_campaign",
@@ -608,7 +612,6 @@ const CREATE_CAMPAIGN_ALLOWED_TOOLS = [
608
612
  "mcp__sellable__get_table_rows",
609
613
  "mcp__sellable__load_csv_linkedin_leads",
610
614
  "mcp__sellable__load_csv_domains",
611
- "mcp__sellable__queue_cells",
612
615
  "mcp__sellable__get_campaign_messages_preview",
613
616
  "mcp__sellable__attach_sequence",
614
617
  "mcp__sellable__attach_recommended_sequence",
@@ -1106,10 +1109,9 @@ updates.
1106
1109
  asset loader so they share the same config.
1107
1110
  3. Follow that prompt and workflow config exactly.
1108
1111
  4. For message generation, use the \`post-find-leads-message-scout\` agent when
1109
- available. The worker and parent-thread fallback must load the full
1110
- long-form \`generate-messages\` prompt with
1111
- \`mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages", offset, limit })\`
1112
- until \`hasMore=false\`. Message review requires Message Draft Builder output:
1112
+ available. The worker and parent-thread fallback must load
1113
+ \`mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages" })\`.
1114
+ Do not use any alternate or examples-only message prompt. Message review requires Message Draft Builder output:
1113
1115
  do not draft from a checklist, local markdown artifact, or parent-thread
1114
1116
  intuition. Use campaign state, campaign brief content, selected source state,
1115
1117
  and initial campaign-table execution slice rows as the source of truth; do not read stale
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sellable/install",
3
- "version": "0.1.148",
3
+ "version": "0.1.150",
4
4
  "type": "module",
5
5
  "description": "One-command installer for Sellable MCP in Claude Code and Codex",
6
6
  "bin": {
@@ -36,7 +36,11 @@ allowed-tools:
36
36
  - mcp__sellable__check_rubric
37
37
  - mcp__sellable__create_campaign
38
38
  - mcp__sellable__save_rubrics
39
- - mcp__sellable__wait_for_rubric_results
39
+ - mcp__sellable__get_campaign_table_schema
40
+ - mcp__sellable__select_campaign_cells
41
+ - mcp__sellable__queue_campaign_cells
42
+ - mcp__sellable__wait_for_campaign_processing
43
+ - mcp__sellable__revise_message_template_and_rerun
40
44
  - mcp__sellable__update_campaign_brief
41
45
  - mcp__sellable__update_campaign
42
46
  - mcp__sellable__get_campaign
@@ -52,7 +56,6 @@ allowed-tools:
52
56
  - mcp__sellable__get_table_rows
53
57
  - mcp__sellable__load_csv_linkedin_leads
54
58
  - mcp__sellable__load_csv_domains
55
- - mcp__sellable__queue_cells
56
59
  - mcp__sellable__get_campaign_messages_preview
57
60
  - mcp__sellable__attach_sequence
58
61
  - mcp__sellable__attach_recommended_sequence
@@ -267,8 +270,13 @@ only an internal approval proof.
267
270
 
268
271
  For campaign-attached Signal Discovery sampling, promote/select the exact posts
269
272
  with `select_promising_posts` before `fetch_post_engagers` so the user can see
270
- which posts are being sampled in the watched app. The watch guide should say
271
- that we are checking people from these posts to confirm the right people are
273
+ which posts are being sampled in the watched app. Use
274
+ `selectionMode: "replace"` for a fresh absolute promoted set and
275
+ `selectionMode: "add"` only when intentionally expanding existing promoted
276
+ posts. Use `scrapePlanMode: "all-selected"` when the approval/import should use
277
+ every promoted post; use `scrapePlanMode: "capacity-target"` only when source
278
+ math should import the smallest set that covers a target. The watch guide should
279
+ say that we are checking people from these posts to confirm the right people are
272
280
  actually engaging and the source is viable.
273
281
 
274
282
  After confirmed source rows exist in the campaign table, use the same registry pattern for
@@ -751,10 +759,9 @@ updates.
751
759
  asset loader so they share the same config.
752
760
  3. Follow that prompt and workflow config exactly.
753
761
  4. For message generation, use the `post-find-leads-message-scout` agent when
754
- available. The worker and parent-thread fallback must load the full
755
- long-form `generate-messages` prompt with
756
- `mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages", offset, limit })`
757
- until `hasMore=false`. Message review requires Message Draft Builder output:
762
+ available. The worker and parent-thread fallback must load
763
+ `mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages" })`.
764
+ Do not use any alternate or examples-only message prompt. Message review requires Message Draft Builder output:
758
765
  do not draft from a checklist, local markdown artifact, or parent-thread
759
766
  intuition. Use campaign state, campaign brief content, selected source state, and
760
767
  initial campaign-table execution slice rows as the source of truth; do not read stale local