@sellable/install 0.1.147 → 0.1.149

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,14 @@ 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 compact 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-compact" })`
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. Load
45
+ `generate-messages-compact/references/examples-critique-revision.md` only for
46
+ critique, revision, or close-call examples. Do not use create-campaign
47
+ safety/checklist instructions as a substitute for the message prompt.
47
48
  3. Draft only from the campaign brief, selected source context, and initial
48
49
  campaign-table execution slice rows supplied by the parent.
49
50
  4. Keep the work provisional until the user chooses `Use Template` in Messages.
@@ -56,7 +57,7 @@ Return the following to the parent thread:
56
57
  - token fill rules and fallbacks
57
58
  - one rendered good-fill sample for a plausible passing campaign-table row
58
59
  - one omit/fallback sample when the row signal is not safe
59
- - pass/fail notes against the generate-messages quality gates
60
+ - pass/fail notes against the generate-messages-compact quality gates
60
61
  - compact runtime status: `ready`, `blocked`, `retry-needed`, or `stale`
61
62
  - basis token containing campaign revision/updatedAt, brief hash,
62
63
  `selectedLeadListId`, `workflowTableId`, execution-slice row ids/hash, filter
@@ -136,7 +137,7 @@ enablement`, or omit it.
136
137
 
137
138
  Return a concise status with:
138
139
 
139
- - prompt basis loaded: `generate-messages`
140
+ - prompt basis loaded: `generate-messages-compact`
140
141
  - live campaign basis used
141
142
  - proposed template
142
143
  - token fill rules/fallbacks
@@ -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,
@@ -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",
@@ -701,9 +704,10 @@ label it explicitly as not estimated from this run.
701
704
  Before any provider prompt, search, source scout, or signal-discovery call, show
702
705
  one source-plan gate and ask for approval. Write this like a fifth grader could
703
706
  understand it: short sentences, no internal labels, and no GTM shorthand. The
704
- plan must be visible before the question, and this first approval only
705
- authorizes finding the best places to look for buyers. It does not add anyone
706
- to the campaign yet. The gate should say:
707
+ order is strict: first show the plan in chat, then open the approval question.
708
+ Do not open a generic approval first and reuse it after the plan. This first
709
+ approval only authorizes finding the best places to look for buyers. It does
710
+ not add anyone to the campaign yet. The gate should say:
707
711
 
708
712
  - the buyer groups or places we could check
709
713
  - the best place to start
@@ -752,9 +756,11 @@ instead and explain it in plain words once. Do not call \`search_signals\`,
752
756
  \`fetch_post_engagers\`, or provider-scoped subagents until the user approves this
753
757
  source plan or explicitly chooses a different source.
754
758
 
755
- If the user already answered a provider approval such as "Approve Prospeo plan",
756
- that answer satisfies the source-plan gate. Persist the approved provider and
757
- run the scouting/search next; do not ask a second source-plan approval question.
759
+ If the user answers a provider approval such as "Approve Prospeo plan" after
760
+ seeing the source plan, that answer satisfies the source-plan gate. Persist the
761
+ approved provider and run the scouting/search next; do not ask a second
762
+ source-plan approval question. A brief approval, generic "approve plan", or
763
+ provider state from before the visible source plan does not satisfy this gate.
758
764
 
759
765
  For hiring-led campaigns, do not default to Sales Nav just because the target is
760
766
  a role search. Prospeo is the primary lane when the brief asks for companies
@@ -1103,10 +1109,9 @@ updates.
1103
1109
  asset loader so they share the same config.
1104
1110
  3. Follow that prompt and workflow config exactly.
1105
1111
  4. For message generation, use the \`post-find-leads-message-scout\` agent when
1106
- available. The worker and parent-thread fallback must load the full
1107
- long-form \`generate-messages\` prompt with
1108
- \`mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages", offset, limit })\`
1109
- 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-compact" })\`.
1114
+ Load lazy examples/critique/revision references only when needed. Message review requires Message Draft Builder output:
1110
1115
  do not draft from a checklist, local markdown artifact, or parent-thread
1111
1116
  intuition. Use campaign state, campaign brief content, selected source state,
1112
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.147",
3
+ "version": "0.1.149",
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
@@ -132,9 +135,10 @@ label it explicitly as not estimated from this run.
132
135
  Before any provider prompt, search, source scout, or signal-discovery call, show
133
136
  one source-plan gate and ask for approval. Write this like a fifth grader could
134
137
  understand it: short sentences, no internal labels, and no GTM shorthand. The
135
- plan must be visible before the question, and this first approval only
136
- authorizes finding the best places to look for buyers. It does not add anyone
137
- to the campaign yet. The gate should say:
138
+ order is strict: first show the plan in chat, then open the approval question.
139
+ Do not open a generic approval first and reuse it after the plan. This first
140
+ approval only authorizes finding the best places to look for buyers. It does
141
+ not add anyone to the campaign yet. The gate should say:
138
142
 
139
143
  - the buyer groups or places we could check
140
144
  - the best place to start
@@ -183,9 +187,11 @@ instead and explain it in plain words once. Do not call `search_signals`,
183
187
  `fetch_post_engagers`, or provider-scoped subagents until the user approves this
184
188
  source plan or explicitly chooses a different source.
185
189
 
186
- If the user already answered a provider approval such as "Approve Prospeo plan",
187
- that answer satisfies the source-plan gate. Persist the approved provider and
188
- run the scouting/search next; do not ask a second source-plan approval question.
190
+ If the user answers a provider approval such as "Approve Prospeo plan" after
191
+ seeing the source plan, that answer satisfies the source-plan gate. Persist the
192
+ approved provider and run the scouting/search next; do not ask a second
193
+ source-plan approval question. A brief approval, generic "approve plan", or
194
+ provider state from before the visible source plan does not satisfy this gate.
189
195
 
190
196
  For hiring-led campaigns, do not default to Sales Nav just because the target is
191
197
  a role search. Prospeo is the primary lane when the brief asks for companies
@@ -748,10 +754,9 @@ updates.
748
754
  asset loader so they share the same config.
749
755
  3. Follow that prompt and workflow config exactly.
750
756
  4. For message generation, use the `post-find-leads-message-scout` agent when
751
- available. The worker and parent-thread fallback must load the full
752
- long-form `generate-messages` prompt with
753
- `mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages", offset, limit })`
754
- until `hasMore=false`. Message review requires Message Draft Builder output:
757
+ available. The worker and parent-thread fallback must load
758
+ `mcp__sellable__get_subskill_prompt({ subskillName: "generate-messages-compact" })`.
759
+ Load lazy examples/critique/revision references only when needed. Message review requires Message Draft Builder output:
755
760
  do not draft from a checklist, local markdown artifact, or parent-thread
756
761
  intuition. Use campaign state, campaign brief content, selected source state, and
757
762
  initial campaign-table execution slice rows as the source of truth; do not read stale local