@sellable/mcp 0.1.549 → 0.1.550
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/api.js +6 -3
- package/dist/auth.d.ts +6 -0
- package/dist/auth.js +44 -2
- package/dist/index-dev.js +0 -0
- package/dist/index.js +0 -0
- package/dist/refill-date-window.d.ts +34 -0
- package/dist/refill-date-window.js +210 -0
- package/dist/server.js +1 -1
- package/dist/tools/auth.d.ts +5 -0
- package/dist/tools/auth.js +49 -12
- package/dist/tools/campaigns.d.ts +8 -57
- package/dist/tools/campaigns.js +5 -30
- package/dist/tools/csv-dnc.js +2 -2
- package/dist/tools/leads.d.ts +0 -22
- package/dist/tools/leads.js +1 -6
- package/dist/tools/refill-sends-evergreen.d.ts +28 -0
- package/dist/tools/refill-sends-evergreen.js +47 -0
- package/dist/tools/registry.d.ts +9 -88
- package/dist/tools/sequencer.d.ts +3 -16
- package/dist/tools/sequencer.js +36 -72
- package/dist/tools/setup-evergreen-campaigns.d.ts +0 -21
- package/dist/tools/setup-evergreen-campaigns.js +3 -22
- package/dist/tools/workspace-context.d.ts +1 -1
- package/dist/tools/workspace-context.js +8 -3
- package/dist/tools/workspace-export.js +2 -2
- package/dist/tools/workspaces.d.ts +48 -2
- package/dist/tools/workspaces.js +48 -5
- package/package.json +1 -1
- package/skills/create-campaign-v2/references/tier-routing-matrix.md +0 -5
- package/skills/create-evergreen-campaigns/SKILL.md +8 -57
- package/skills/refill-sends/SKILL.md +0 -5
- package/skills/refill-sends-v2/SKILL.md +0 -5
- package/skills/refill-sends-v2-workflow/SKILL.md +0 -7
- package/skills/refill-sends-v2-workflow/core/flow.v1.json +0 -1
|
@@ -134,19 +134,6 @@ run without user input, or similar, run in **automation mode**:
|
|
|
134
134
|
exactly one quality-valid route-proof row when needed, and attach the
|
|
135
135
|
recommended sequence, but it still must not launch campaigns, schedule
|
|
136
136
|
sends, send messages, or spend paid InMail.
|
|
137
|
-
- **Connection-only evergreen completion is optional and non-default.** Use it
|
|
138
|
-
only when the prompt explicitly says connection-only, invite-only,
|
|
139
|
-
connection request only, no DMs, or no follow-ups. Pass the typed option
|
|
140
|
-
`campaignSequenceOptions:{ mode:"connection_only" }` plus an explicit
|
|
141
|
-
`workspaceId` to `setup_evergreen_campaigns`. Omit
|
|
142
|
-
`campaignSequenceOptions` for the standard tier-recommended Premium,
|
|
143
|
-
Sales Nav, Recruiter, and paid InMail behavior.
|
|
144
|
-
Connection-only completion still creates/reuses the same evergreen lanes,
|
|
145
|
-
source rows, and paused/unlaunched review state, but it attaches only the
|
|
146
|
-
canonical invite template and persists `currentStep:"send"` as the paused
|
|
147
|
-
review step. It does not require Message Drafting, generated messages,
|
|
148
|
-
route-proof approval, first DM, InMail, View Profile fallback, follow-up
|
|
149
|
-
branch, launch, scheduling, or sends.
|
|
150
137
|
|
|
151
138
|
If the invoking prompt explicitly asks for interactive message polish or sample
|
|
152
139
|
proof, run in **interactive polish mode** and use the confirmation/sample steps
|
|
@@ -733,9 +720,6 @@ not a parent-thread summary. The receipt must include:
|
|
|
733
720
|
creation, preserve that original packet only in a separate `parentLanePacket`
|
|
734
721
|
object; do not leave `setupPlanCall.campaignId:null` or
|
|
735
722
|
`setupPlanCall.tableId:null`.
|
|
736
|
-
If the parent plan used connection-only, the receipt must also include
|
|
737
|
-
`setupPlanCall.campaignSequenceOptions:{ "mode":"connection_only" }` or
|
|
738
|
-
`setupPlanCall.sequencePolicy.mode:"connection_only"`.
|
|
739
723
|
Short form: For create lanes, `setupPlanCall.campaignId` and `setupPlanCall.tableId` must be the actual created campaign/table ids.
|
|
740
724
|
Short form: Do not leave `setupPlanCall.campaignId:null` or `setupPlanCall.tableId:null`.
|
|
741
725
|
- `createCampaignWorkflowReceipt`: proof the worker loaded the actual installed
|
|
@@ -826,40 +810,22 @@ not a parent-thread summary. The receipt must include:
|
|
|
826
810
|
them into canonical `promptLoadedToHasMoreFalse`, `requiredAssetsLoaded`,
|
|
827
811
|
`validationLoaded`, `reviewBatchRowHash`, and
|
|
828
812
|
`messageDraftRecommendation`.
|
|
829
|
-
Connection-only lanes are the exception: do not include
|
|
830
|
-
`messageDraftingReceipt` or run generated-message prep unless the operator
|
|
831
|
-
separately asked for message copy. The parent verifier expects no message
|
|
832
|
-
proof for connection-only lanes.
|
|
833
813
|
- `reviewBatchReceipt`: review-batch row ids/hash, generated row count,
|
|
834
814
|
quality-valid route-proof row id when approved, and proof that no broad
|
|
835
815
|
approve-all occurred.
|
|
836
|
-
Connection-only lanes are the exception: do not approve a route-proof row and
|
|
837
|
-
do not include a required review-batch receipt.
|
|
838
816
|
- `sequenceReceipt`: exact current workflowTableId, recommended non-paid
|
|
839
817
|
sequence attach/precheck result, and readback showing `hasSequence:true` when
|
|
840
818
|
completion is claimed. If the tool output uses
|
|
841
819
|
`attachRecommendedSequenceResult.actionTypes` or
|
|
842
820
|
`nonPaidRecommendedSequence`, copy them to canonical `actionTypes` and
|
|
843
821
|
`nonPaid`.
|
|
844
|
-
For connection-only lanes, do not call `attach_recommended_sequence`. Attach
|
|
845
|
-
with `attach_sequence({ tableId, templateRef:"connection_only", currentStep:"send" })`, then
|
|
846
|
-
include exact current-template proof:
|
|
847
|
-
`sequenceReceipt.hasSequence:true`,
|
|
848
|
-
`sequenceReceipt.actionTypes:["send_invite"]`, and
|
|
849
|
-
`sequenceReceipt.nonPaid:true`. Receipts that only say
|
|
850
|
-
`tool:"attach_recommended_sequence"` or include `send_dm`,
|
|
851
|
-
`send_inmail_open`, `send_inmail_closed`, or `view_profile` are failing
|
|
852
|
-
connection-only receipts.
|
|
853
822
|
- final paused-send proof: if the current campaign table is `DRAFT` after the
|
|
854
823
|
sequence is attached, call the product `pause_campaign({ campaignId })`
|
|
855
824
|
endpoint/tool to put the unlaunched campaign into `PAUSED` review state, then
|
|
856
825
|
reread the campaign/table. Do not raw-write `campaignStatus`, do not start or
|
|
857
826
|
launch, and do not schedule/send. Completion requires reread proof of
|
|
858
|
-
`currentStep:"send"` and `campaignStatus:"PAUSED"
|
|
859
|
-
|
|
860
|
-
review step; do not use unsupported aliases such as `review` as final proof.
|
|
861
|
-
If the raw output nests this in `finalCampaignRead` or `finalTableRead`, copy
|
|
862
|
-
it to canonical
|
|
827
|
+
`currentStep:"send"` and `campaignStatus:"PAUSED"`. If the raw output nests
|
|
828
|
+
this in `finalCampaignRead` or `finalTableRead`, copy it to canonical
|
|
863
829
|
`finalPausedSendProof.currentStep` and
|
|
864
830
|
`finalPausedSendProof.campaignStatus`.
|
|
865
831
|
- `verifyCall`: the exact `setup_evergreen_campaigns({ mode:"verify",
|
|
@@ -1122,14 +1088,9 @@ plain row generation. The lane worker must inline the same
|
|
|
1122
1088
|
approvedGeneratedMessageCount exactly 1. Do not report completion with 2+
|
|
1123
1089
|
approved rows.
|
|
1124
1090
|
Approval shorthand: Do not report completion with 2+ approved rows.
|
|
1125
|
-
8.
|
|
1126
|
-
`
|
|
1127
|
-
the campaign
|
|
1128
|
-
campaign/table before claiming completion.
|
|
1129
|
-
Connection-only mode: skip Message Drafting and route-proof approval, call
|
|
1130
|
-
`attach_sequence({ tableId, templateRef:"connection_only", currentStep:"send" })`, prove
|
|
1131
|
-
`sequenceReceipt.actionTypes:["send_invite"]`, and pause/reread without
|
|
1132
|
-
launching or sending.
|
|
1091
|
+
8. Continue to `attach_recommended_sequence({ campaignId, currentStep:"send" })`
|
|
1092
|
+
and, if the campaign is still `DRAFT`, `pause_campaign({ campaignId })`.
|
|
1093
|
+
Reread the campaign/table before claiming completion.
|
|
1133
1094
|
|
|
1134
1095
|
That packaged worker path must return `messageDraftingReceipt.statusSource:
|
|
1135
1096
|
"packaged-generate-messages-worker"`. It is accepted only when the receipt
|
|
@@ -1554,14 +1515,11 @@ Message, and verify current-revision sample messages before final completion.
|
|
|
1554
1515
|
- DM lanes: add a `Delivery format:` line — either `multiline (each paragraph sends as its own DM message)` or `single message`. When multiline, the template's blank-line paragraphs ARE the message boundaries — write each one as a standalone typed message.
|
|
1555
1516
|
- **InMail lanes can never be multiline**: an InMail is one message and the recipient must reply before anything else can be sent. InMail-bound templates must read as one cohesive message — declare `Delivery format: single message (InMail — no follow-up until reply)` and never structure the copy to depend on multi-message pacing.
|
|
1556
1517
|
|
|
1557
|
-
-
|
|
1518
|
+
- The sequence is auto-selected by sender tier; do not hand-author sequence
|
|
1558
1519
|
templates here. Sales Nav/Recruiter senders may receive the unified Sales
|
|
1559
1520
|
Nav cascade through `attach_recommended_sequence`; attaching it does not
|
|
1560
1521
|
spend paid InMail credits by itself. Do not substitute the manual Paid
|
|
1561
1522
|
InMail Campaign template.
|
|
1562
|
-
For explicit connection-only evergreen lanes only, use the backend-owned
|
|
1563
|
-
`attach_sequence({ tableId, templateRef:"connection_only", currentStep:"send" })` path and do
|
|
1564
|
-
not call `attach_recommended_sequence`.
|
|
1565
1523
|
3. **Customer-Visible Completion Contract**: a named evergreen lane that appears
|
|
1566
1524
|
as a campaign card or campaign-backed table is not done when the shell exists.
|
|
1567
1525
|
It is done only when the customer can open the campaign and land on final
|
|
@@ -1585,7 +1543,7 @@ Message, and verify current-revision sample messages before final completion.
|
|
|
1585
1543
|
evergreen setup. Do not leave customer-visible campaigns at
|
|
1586
1544
|
`filter-choice`, `filter-rules`, or `apply-icp-rubric` and report success.
|
|
1587
1545
|
Do not proceed to Message Drafting until saved filters are applied.
|
|
1588
|
-
-
|
|
1546
|
+
- Message Drafting has run from the current campaign/table basis, using the
|
|
1589
1547
|
create-campaign message prompt/assets and validation gate. Updating
|
|
1590
1548
|
`currentStep:"messages"` is not proof. Parent-thread handwritten copy is
|
|
1591
1549
|
not a substitute. The proof receipt must show
|
|
@@ -1626,9 +1584,6 @@ Message, and verify current-revision sample messages before final completion.
|
|
|
1626
1584
|
Fallback samples must still reject source/conversation hedges such as
|
|
1627
1585
|
`"hope this is relevant"`, `"might be interested"`, or `"saw you in a few
|
|
1628
1586
|
conversations"`.
|
|
1629
|
-
For explicit connection-only lanes, this whole Message Drafting and sample
|
|
1630
|
-
proof block is not required and must not be faked with parent-written
|
|
1631
|
-
messages.
|
|
1632
1587
|
- The first review batch exists and at least 3 review rows have generated
|
|
1633
1588
|
messages from the approved brief. If fewer than 3 usable rows exist, report
|
|
1634
1589
|
the actual count and why.
|
|
@@ -1641,7 +1596,7 @@ Message, and verify current-revision sample messages before final completion.
|
|
|
1641
1596
|
completion, approve exactly one quality-valid generated row. If one or more
|
|
1642
1597
|
rows are already approved, do not add more approvals during evergreen
|
|
1643
1598
|
completion. Never broad approve all rows.
|
|
1644
|
-
-
|
|
1599
|
+
- The recommended tier-aware sequence is attached to the current campaign
|
|
1645
1600
|
table, and the watched campaign is on Send. Use
|
|
1646
1601
|
`attach_recommended_sequence({ campaignId, currentStep:"send" })` when a
|
|
1647
1602
|
safe attach is needed. After `confirm_lead_list` or any source-list copy,
|
|
@@ -1656,10 +1611,6 @@ Message, and verify current-revision sample messages before final completion.
|
|
|
1656
1611
|
manual Paid InMail Campaign, and never attach/replace sequence outside the
|
|
1657
1612
|
current table unless the current lane packet explicitly allowed sequence
|
|
1658
1613
|
repair.
|
|
1659
|
-
For explicit connection-only lanes, the current campaign table must have
|
|
1660
|
-
exactly the canonical invite-only sequence:
|
|
1661
|
-
`sequenceReceipt.actionTypes:["send_invite"]`. Any DM, InMail, or View
|
|
1662
|
-
Profile action means the lane is not complete.
|
|
1663
1614
|
- If the current campaign table is still `DRAFT` after sequence/readiness
|
|
1664
1615
|
proof, call `pause_campaign({ campaignId })` and reread. `pause_campaign`
|
|
1665
1616
|
is the product-native review-state transition; it is not a launch and does
|
|
@@ -196,11 +196,6 @@ rather than asking which campaign class to fill. If a stale target plan selects
|
|
|
196
196
|
planner before mutation.
|
|
197
197
|
Short form: trust the target plan's inferred lane when it is a connection invite,
|
|
198
198
|
paid-InMail refill lane, or unified Sales Nav cascade.
|
|
199
|
-
Connection-only evergreen campaigns with exact `["send_invite"]` sequence proof
|
|
200
|
-
are plain invite capacity: treat them as `selectedLane:"send_invite"` only. Do
|
|
201
|
-
not infer DM, InMail, Sales Nav cascade, paid-credit refresh, message
|
|
202
|
-
generation, follow-up, sequence mutation, launch/start, scheduling override, or
|
|
203
|
-
direct-send work from a connection-only lane.
|
|
204
199
|
|
|
205
200
|
Structured planner packet:
|
|
206
201
|
|
|
@@ -62,11 +62,6 @@ for lease expiry; never guess a fence.
|
|
|
62
62
|
The default `intent:"auto"` inspects `managed_waterfall`,
|
|
63
63
|
`dashboard_evergreen`, and `active_campaign` lane sources. Report the lane
|
|
64
64
|
source and lane chain as proof for every selected sender.
|
|
65
|
-
Connection-only evergreen lanes are invite-only refill targets. When the packet
|
|
66
|
-
or campaign proof shows exactly `["send_invite"]`, report and execute only
|
|
67
|
-
`selectedLane:"send_invite"` work; do not infer DM, InMail, Sales Nav cascade,
|
|
68
|
-
paid-credit refresh, message generation, follow-up, sequence mutation,
|
|
69
|
-
launch/start beyond packet authority, scheduler writes, or direct sends.
|
|
70
65
|
|
|
71
66
|
If membership blocks a workspace read, report the structured
|
|
72
67
|
`workspace_access` blocker instead of retrying auth or switching workspaces.
|
|
@@ -61,13 +61,6 @@ the repair rung, such as re-run errored enrichment/message cells
|
|
|
61
61
|
(`start_campaign`). The loop bounds and refuses repair loops; it never invents
|
|
62
62
|
a fix list.
|
|
63
63
|
|
|
64
|
-
Connection-only evergreen packets are invite-only. If the selected lane or
|
|
65
|
-
campaign proof is exactly `["send_invite"]`, the workflow may refill only
|
|
66
|
-
`selectedLane:"send_invite"` capacity. Do not treat that lane as a DM, InMail,
|
|
67
|
-
Sales Nav cascade, paid-credit refresh, generated-message requirement,
|
|
68
|
-
follow-up branch, sequence-repair task, scheduler write, launch/send, or
|
|
69
|
-
provider-family continuation.
|
|
70
|
-
|
|
71
64
|
Use plain-language labels first and tokens second, for example "copy leads
|
|
72
65
|
already found into the campaign table (`reconcile_source_copy`)".
|
|
73
66
|
|
|
@@ -52,7 +52,6 @@
|
|
|
52
52
|
"awaiting scheduler is not an end state; window-closed reports name remaining-ready, expected pickup time, and resume handle",
|
|
53
53
|
"honest-rubric-fail means a human updates the rubric or changes lead source",
|
|
54
54
|
"source replenishment beyond same-source-automatic is a scoped create-campaign handoff, never refill-owned provider search",
|
|
55
|
-
"connection-only evergreen lanes with exact [\"send_invite\"] proof are invite-only refill capacity; never infer DM, InMail, Sales Nav cascade, paid-credit refresh, message generation, follow-up, sequence mutation, scheduler writes, launch, or send work from them",
|
|
56
55
|
"no campaign creation, provider-family switch, threshold lowering, scheduler writes, sends, archives, deletes, or brief/filter/message/sequence/sender mutation without a separate approval packet"
|
|
57
56
|
],
|
|
58
57
|
"requiredBootstrap": [
|