@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
|
|
40
|
+
1. Load the compact normal-path message prompt:
|
|
41
41
|
|
|
42
|
-
`get_subskill_prompt({ subskillName: "generate-messages"
|
|
43
|
-
until `hasMore` is false.
|
|
42
|
+
`get_subskill_prompt({ subskillName: "generate-messages-compact" })`
|
|
44
43
|
|
|
45
|
-
2. Use that prompt as the drafting contract.
|
|
46
|
-
|
|
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
|
package/agents/registry.json
CHANGED
|
@@ -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
|
|
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,
|
package/bin/sellable-install.mjs
CHANGED
|
@@ -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
|
-
"
|
|
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
|
-
|
|
705
|
-
|
|
706
|
-
|
|
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
|
|
756
|
-
that answer satisfies the source-plan gate. Persist the
|
|
757
|
-
run the scouting/search next; do not ask a second
|
|
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
|
|
1107
|
-
|
|
1108
|
-
|
|
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
|
@@ -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
|
-
-
|
|
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
|
-
|
|
136
|
-
|
|
137
|
-
|
|
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
|
|
187
|
-
that answer satisfies the source-plan gate. Persist the
|
|
188
|
-
run the scouting/search next; do not ask a second
|
|
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
|
|
752
|
-
|
|
753
|
-
|
|
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
|