@sellable/mcp 0.1.190 → 0.1.191
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/README.md +1 -1
- package/agents/post-find-leads-message-scout.md +7 -8
- package/agents/registry.json +2 -2
- package/dist/auth.js +1 -1
- package/dist/index-dev.js +0 -0
- package/dist/index.js +0 -0
- package/dist/server.js +0 -22
- package/dist/tools/leads.d.ts +19 -63
- package/dist/tools/leads.js +3 -54
- package/dist/tools/prompts.js +2 -2
- package/dist/tools/registry.d.ts +37 -289
- package/dist/tools/registry.js +0 -2
- package/package.json +1 -1
- package/skills/create-campaign/SKILL.md +6 -8
- package/skills/create-campaign-v2/SKILL.md +9 -8
- package/skills/create-campaign-v2/SOUL.md +2 -2
- package/skills/create-campaign-v2/core/flow.v2.json +1 -1
- package/skills/create-campaign-v2/core/policy.md +3 -3
- package/skills/create-campaign-v2/references/approval-gate-framing.md +5 -5
- package/skills/create-campaign-v2/references/filter-leads.md +3 -5
- package/skills/create-campaign-v2/references/parallel-critique-protocol.md +2 -2
- package/skills/create-campaign-v2/references/sample-validation-loop.md +66 -46
- package/skills/create-campaign-v2/references/step-15-re-cascade.md +13 -20
- package/skills/create-campaign-v2-tail/SKILL.md +65 -52
- package/dist/tools/campaign-processing.d.ts +0 -383
- package/dist/tools/campaign-processing.js +0 -304
- package/skills/generate-messages-compact/SKILL.md +0 -100
- package/skills/generate-messages-compact/references/examples-critique-revision.md +0 -37
package/dist/tools/registry.d.ts
CHANGED
|
@@ -853,278 +853,6 @@ export declare const allTools: ({
|
|
|
853
853
|
required: string[];
|
|
854
854
|
additionalProperties?: undefined;
|
|
855
855
|
};
|
|
856
|
-
} | {
|
|
857
|
-
name: string;
|
|
858
|
-
description: string;
|
|
859
|
-
inputSchema: {
|
|
860
|
-
type: string;
|
|
861
|
-
properties: {
|
|
862
|
-
campaignId: {
|
|
863
|
-
type: string;
|
|
864
|
-
description: string;
|
|
865
|
-
};
|
|
866
|
-
timeoutMs: {
|
|
867
|
-
type: string;
|
|
868
|
-
description: string;
|
|
869
|
-
};
|
|
870
|
-
intervalMs: {
|
|
871
|
-
type: string;
|
|
872
|
-
description: string;
|
|
873
|
-
};
|
|
874
|
-
requireRows: {
|
|
875
|
-
type: string;
|
|
876
|
-
description: string;
|
|
877
|
-
};
|
|
878
|
-
flowVersion: {
|
|
879
|
-
type: string;
|
|
880
|
-
enum: string[];
|
|
881
|
-
description: string;
|
|
882
|
-
};
|
|
883
|
-
leadListId?: undefined;
|
|
884
|
-
campaignOfferId?: undefined;
|
|
885
|
-
provider?: undefined;
|
|
886
|
-
jobId?: undefined;
|
|
887
|
-
targetLeadCount?: undefined;
|
|
888
|
-
requireComplete?: undefined;
|
|
889
|
-
};
|
|
890
|
-
required: string[];
|
|
891
|
-
additionalProperties: boolean;
|
|
892
|
-
};
|
|
893
|
-
} | {
|
|
894
|
-
name: string;
|
|
895
|
-
description: string;
|
|
896
|
-
inputSchema: {
|
|
897
|
-
type: string;
|
|
898
|
-
properties: {
|
|
899
|
-
campaignId: {
|
|
900
|
-
type: string;
|
|
901
|
-
};
|
|
902
|
-
tableId: {
|
|
903
|
-
type: string;
|
|
904
|
-
};
|
|
905
|
-
columnRole?: undefined;
|
|
906
|
-
rowSelector?: undefined;
|
|
907
|
-
limit?: undefined;
|
|
908
|
-
forceRerun?: undefined;
|
|
909
|
-
reason?: undefined;
|
|
910
|
-
minPassedCount?: undefined;
|
|
911
|
-
minGeneratedMessages?: undefined;
|
|
912
|
-
templateRevision?: undefined;
|
|
913
|
-
timeoutMs?: undefined;
|
|
914
|
-
intervalMs?: undefined;
|
|
915
|
-
templateMarkdown?: undefined;
|
|
916
|
-
approvedMessageTemplate?: undefined;
|
|
917
|
-
};
|
|
918
|
-
additionalProperties: boolean;
|
|
919
|
-
required?: undefined;
|
|
920
|
-
};
|
|
921
|
-
} | {
|
|
922
|
-
name: string;
|
|
923
|
-
description: string;
|
|
924
|
-
inputSchema: {
|
|
925
|
-
type: string;
|
|
926
|
-
properties: {
|
|
927
|
-
campaignId: {
|
|
928
|
-
type: string;
|
|
929
|
-
};
|
|
930
|
-
tableId: {
|
|
931
|
-
type: string;
|
|
932
|
-
};
|
|
933
|
-
columnRole: {
|
|
934
|
-
type: string;
|
|
935
|
-
enum: string[];
|
|
936
|
-
};
|
|
937
|
-
rowSelector: {
|
|
938
|
-
type: string;
|
|
939
|
-
properties: {
|
|
940
|
-
type: {
|
|
941
|
-
type: string;
|
|
942
|
-
enum: string[];
|
|
943
|
-
};
|
|
944
|
-
basisHash: {
|
|
945
|
-
type: string;
|
|
946
|
-
};
|
|
947
|
-
rowIds: {
|
|
948
|
-
type: string;
|
|
949
|
-
items: {
|
|
950
|
-
type: string;
|
|
951
|
-
};
|
|
952
|
-
};
|
|
953
|
-
limit: {
|
|
954
|
-
type: string;
|
|
955
|
-
};
|
|
956
|
-
};
|
|
957
|
-
required: string[];
|
|
958
|
-
additionalProperties: boolean;
|
|
959
|
-
};
|
|
960
|
-
limit: {
|
|
961
|
-
type: string;
|
|
962
|
-
};
|
|
963
|
-
forceRerun?: undefined;
|
|
964
|
-
reason?: undefined;
|
|
965
|
-
minPassedCount?: undefined;
|
|
966
|
-
minGeneratedMessages?: undefined;
|
|
967
|
-
templateRevision?: undefined;
|
|
968
|
-
timeoutMs?: undefined;
|
|
969
|
-
intervalMs?: undefined;
|
|
970
|
-
templateMarkdown?: undefined;
|
|
971
|
-
approvedMessageTemplate?: undefined;
|
|
972
|
-
};
|
|
973
|
-
required: string[];
|
|
974
|
-
additionalProperties: boolean;
|
|
975
|
-
};
|
|
976
|
-
} | {
|
|
977
|
-
name: string;
|
|
978
|
-
description: string;
|
|
979
|
-
inputSchema: {
|
|
980
|
-
type: string;
|
|
981
|
-
properties: {
|
|
982
|
-
campaignId: {
|
|
983
|
-
type: string;
|
|
984
|
-
};
|
|
985
|
-
tableId: {
|
|
986
|
-
type: string;
|
|
987
|
-
};
|
|
988
|
-
columnRole: {
|
|
989
|
-
type: string;
|
|
990
|
-
enum: string[];
|
|
991
|
-
};
|
|
992
|
-
rowSelector: {
|
|
993
|
-
type: string;
|
|
994
|
-
properties: {
|
|
995
|
-
type: {
|
|
996
|
-
type: string;
|
|
997
|
-
enum: string[];
|
|
998
|
-
};
|
|
999
|
-
basisHash: {
|
|
1000
|
-
type: string;
|
|
1001
|
-
};
|
|
1002
|
-
rowIds: {
|
|
1003
|
-
type: string;
|
|
1004
|
-
items: {
|
|
1005
|
-
type: string;
|
|
1006
|
-
};
|
|
1007
|
-
};
|
|
1008
|
-
limit: {
|
|
1009
|
-
type: string;
|
|
1010
|
-
};
|
|
1011
|
-
};
|
|
1012
|
-
required: string[];
|
|
1013
|
-
additionalProperties: boolean;
|
|
1014
|
-
};
|
|
1015
|
-
forceRerun: {
|
|
1016
|
-
type: string;
|
|
1017
|
-
};
|
|
1018
|
-
limit: {
|
|
1019
|
-
type: string;
|
|
1020
|
-
};
|
|
1021
|
-
reason: {
|
|
1022
|
-
type: string;
|
|
1023
|
-
};
|
|
1024
|
-
minPassedCount?: undefined;
|
|
1025
|
-
minGeneratedMessages?: undefined;
|
|
1026
|
-
templateRevision?: undefined;
|
|
1027
|
-
timeoutMs?: undefined;
|
|
1028
|
-
intervalMs?: undefined;
|
|
1029
|
-
templateMarkdown?: undefined;
|
|
1030
|
-
approvedMessageTemplate?: undefined;
|
|
1031
|
-
};
|
|
1032
|
-
required: string[];
|
|
1033
|
-
additionalProperties: boolean;
|
|
1034
|
-
};
|
|
1035
|
-
} | {
|
|
1036
|
-
name: string;
|
|
1037
|
-
description: string;
|
|
1038
|
-
inputSchema: {
|
|
1039
|
-
type: string;
|
|
1040
|
-
properties: {
|
|
1041
|
-
campaignId: {
|
|
1042
|
-
type: string;
|
|
1043
|
-
};
|
|
1044
|
-
tableId: {
|
|
1045
|
-
type: string;
|
|
1046
|
-
};
|
|
1047
|
-
minPassedCount: {
|
|
1048
|
-
type: string;
|
|
1049
|
-
};
|
|
1050
|
-
minGeneratedMessages: {
|
|
1051
|
-
type: string;
|
|
1052
|
-
};
|
|
1053
|
-
templateRevision: {
|
|
1054
|
-
type: string;
|
|
1055
|
-
description: string;
|
|
1056
|
-
};
|
|
1057
|
-
timeoutMs: {
|
|
1058
|
-
type: string;
|
|
1059
|
-
};
|
|
1060
|
-
intervalMs: {
|
|
1061
|
-
type: string;
|
|
1062
|
-
};
|
|
1063
|
-
columnRole?: undefined;
|
|
1064
|
-
rowSelector?: undefined;
|
|
1065
|
-
limit?: undefined;
|
|
1066
|
-
forceRerun?: undefined;
|
|
1067
|
-
reason?: undefined;
|
|
1068
|
-
templateMarkdown?: undefined;
|
|
1069
|
-
approvedMessageTemplate?: undefined;
|
|
1070
|
-
};
|
|
1071
|
-
additionalProperties: boolean;
|
|
1072
|
-
required?: undefined;
|
|
1073
|
-
};
|
|
1074
|
-
} | {
|
|
1075
|
-
name: string;
|
|
1076
|
-
description: string;
|
|
1077
|
-
inputSchema: {
|
|
1078
|
-
type: string;
|
|
1079
|
-
properties: {
|
|
1080
|
-
campaignId: {
|
|
1081
|
-
type: string;
|
|
1082
|
-
};
|
|
1083
|
-
tableId: {
|
|
1084
|
-
type: string;
|
|
1085
|
-
};
|
|
1086
|
-
templateMarkdown: {
|
|
1087
|
-
type: string;
|
|
1088
|
-
};
|
|
1089
|
-
approvedMessageTemplate: {
|
|
1090
|
-
type: string;
|
|
1091
|
-
};
|
|
1092
|
-
rowSelector: {
|
|
1093
|
-
type: string;
|
|
1094
|
-
properties: {
|
|
1095
|
-
type: {
|
|
1096
|
-
type: string;
|
|
1097
|
-
enum: string[];
|
|
1098
|
-
};
|
|
1099
|
-
rowIds: {
|
|
1100
|
-
type: string;
|
|
1101
|
-
items: {
|
|
1102
|
-
type: string;
|
|
1103
|
-
};
|
|
1104
|
-
};
|
|
1105
|
-
limit: {
|
|
1106
|
-
type: string;
|
|
1107
|
-
};
|
|
1108
|
-
basisHash?: undefined;
|
|
1109
|
-
};
|
|
1110
|
-
required: string[];
|
|
1111
|
-
additionalProperties: boolean;
|
|
1112
|
-
};
|
|
1113
|
-
limit: {
|
|
1114
|
-
type: string;
|
|
1115
|
-
};
|
|
1116
|
-
columnRole?: undefined;
|
|
1117
|
-
forceRerun?: undefined;
|
|
1118
|
-
reason?: undefined;
|
|
1119
|
-
minPassedCount?: undefined;
|
|
1120
|
-
minGeneratedMessages?: undefined;
|
|
1121
|
-
templateRevision?: undefined;
|
|
1122
|
-
timeoutMs?: undefined;
|
|
1123
|
-
intervalMs?: undefined;
|
|
1124
|
-
};
|
|
1125
|
-
required: string[];
|
|
1126
|
-
additionalProperties: boolean;
|
|
1127
|
-
};
|
|
1128
856
|
} | {
|
|
1129
857
|
name: string;
|
|
1130
858
|
description: string;
|
|
@@ -1554,6 +1282,43 @@ export declare const allTools: ({
|
|
|
1554
1282
|
};
|
|
1555
1283
|
required: never[];
|
|
1556
1284
|
};
|
|
1285
|
+
} | {
|
|
1286
|
+
name: string;
|
|
1287
|
+
description: string;
|
|
1288
|
+
inputSchema: {
|
|
1289
|
+
type: string;
|
|
1290
|
+
properties: {
|
|
1291
|
+
campaignId: {
|
|
1292
|
+
type: string;
|
|
1293
|
+
description: string;
|
|
1294
|
+
};
|
|
1295
|
+
timeoutMs: {
|
|
1296
|
+
type: string;
|
|
1297
|
+
description: string;
|
|
1298
|
+
};
|
|
1299
|
+
intervalMs: {
|
|
1300
|
+
type: string;
|
|
1301
|
+
description: string;
|
|
1302
|
+
};
|
|
1303
|
+
requireRows: {
|
|
1304
|
+
type: string;
|
|
1305
|
+
description: string;
|
|
1306
|
+
};
|
|
1307
|
+
flowVersion: {
|
|
1308
|
+
type: string;
|
|
1309
|
+
enum: string[];
|
|
1310
|
+
description: string;
|
|
1311
|
+
};
|
|
1312
|
+
leadListId?: undefined;
|
|
1313
|
+
campaignOfferId?: undefined;
|
|
1314
|
+
provider?: undefined;
|
|
1315
|
+
jobId?: undefined;
|
|
1316
|
+
targetLeadCount?: undefined;
|
|
1317
|
+
requireComplete?: undefined;
|
|
1318
|
+
};
|
|
1319
|
+
required: string[];
|
|
1320
|
+
additionalProperties: boolean;
|
|
1321
|
+
};
|
|
1557
1322
|
} | {
|
|
1558
1323
|
name: string;
|
|
1559
1324
|
description: string;
|
|
@@ -1628,7 +1393,6 @@ export declare const allTools: ({
|
|
|
1628
1393
|
jobId?: undefined;
|
|
1629
1394
|
reviewBatchLimit?: undefined;
|
|
1630
1395
|
allowPartialSourceList?: undefined;
|
|
1631
|
-
includeRawImportResult?: undefined;
|
|
1632
1396
|
selections?: undefined;
|
|
1633
1397
|
selectionMode?: undefined;
|
|
1634
1398
|
};
|
|
@@ -1806,7 +1570,6 @@ export declare const allTools: ({
|
|
|
1806
1570
|
jobId?: undefined;
|
|
1807
1571
|
reviewBatchLimit?: undefined;
|
|
1808
1572
|
allowPartialSourceList?: undefined;
|
|
1809
|
-
includeRawImportResult?: undefined;
|
|
1810
1573
|
selections?: undefined;
|
|
1811
1574
|
selectionMode?: undefined;
|
|
1812
1575
|
};
|
|
@@ -1883,7 +1646,6 @@ export declare const allTools: ({
|
|
|
1883
1646
|
jobId?: undefined;
|
|
1884
1647
|
reviewBatchLimit?: undefined;
|
|
1885
1648
|
allowPartialSourceList?: undefined;
|
|
1886
|
-
includeRawImportResult?: undefined;
|
|
1887
1649
|
selections?: undefined;
|
|
1888
1650
|
selectionMode?: undefined;
|
|
1889
1651
|
};
|
|
@@ -2032,7 +1794,6 @@ export declare const allTools: ({
|
|
|
2032
1794
|
jobId?: undefined;
|
|
2033
1795
|
reviewBatchLimit?: undefined;
|
|
2034
1796
|
allowPartialSourceList?: undefined;
|
|
2035
|
-
includeRawImportResult?: undefined;
|
|
2036
1797
|
selections?: undefined;
|
|
2037
1798
|
selectionMode?: undefined;
|
|
2038
1799
|
};
|
|
@@ -2123,7 +1884,6 @@ export declare const allTools: ({
|
|
|
2123
1884
|
jobId?: undefined;
|
|
2124
1885
|
reviewBatchLimit?: undefined;
|
|
2125
1886
|
allowPartialSourceList?: undefined;
|
|
2126
|
-
includeRawImportResult?: undefined;
|
|
2127
1887
|
selections?: undefined;
|
|
2128
1888
|
selectionMode?: undefined;
|
|
2129
1889
|
};
|
|
@@ -2223,7 +1983,6 @@ export declare const allTools: ({
|
|
|
2223
1983
|
jobId?: undefined;
|
|
2224
1984
|
reviewBatchLimit?: undefined;
|
|
2225
1985
|
allowPartialSourceList?: undefined;
|
|
2226
|
-
includeRawImportResult?: undefined;
|
|
2227
1986
|
selections?: undefined;
|
|
2228
1987
|
selectionMode?: undefined;
|
|
2229
1988
|
};
|
|
@@ -2305,7 +2064,6 @@ export declare const allTools: ({
|
|
|
2305
2064
|
jobId?: undefined;
|
|
2306
2065
|
reviewBatchLimit?: undefined;
|
|
2307
2066
|
allowPartialSourceList?: undefined;
|
|
2308
|
-
includeRawImportResult?: undefined;
|
|
2309
2067
|
selections?: undefined;
|
|
2310
2068
|
selectionMode?: undefined;
|
|
2311
2069
|
};
|
|
@@ -2926,7 +2684,6 @@ export declare const allTools: ({
|
|
|
2926
2684
|
jobId?: undefined;
|
|
2927
2685
|
reviewBatchLimit?: undefined;
|
|
2928
2686
|
allowPartialSourceList?: undefined;
|
|
2929
|
-
includeRawImportResult?: undefined;
|
|
2930
2687
|
selections?: undefined;
|
|
2931
2688
|
selectionMode?: undefined;
|
|
2932
2689
|
};
|
|
@@ -3060,7 +2817,6 @@ export declare const allTools: ({
|
|
|
3060
2817
|
jobId?: undefined;
|
|
3061
2818
|
reviewBatchLimit?: undefined;
|
|
3062
2819
|
allowPartialSourceList?: undefined;
|
|
3063
|
-
includeRawImportResult?: undefined;
|
|
3064
2820
|
selections?: undefined;
|
|
3065
2821
|
selectionMode?: undefined;
|
|
3066
2822
|
};
|
|
@@ -3182,7 +2938,6 @@ export declare const allTools: ({
|
|
|
3182
2938
|
jobId?: undefined;
|
|
3183
2939
|
reviewBatchLimit?: undefined;
|
|
3184
2940
|
allowPartialSourceList?: undefined;
|
|
3185
|
-
includeRawImportResult?: undefined;
|
|
3186
2941
|
selections?: undefined;
|
|
3187
2942
|
selectionMode?: undefined;
|
|
3188
2943
|
};
|
|
@@ -3262,7 +3017,6 @@ export declare const allTools: ({
|
|
|
3262
3017
|
jobId?: undefined;
|
|
3263
3018
|
reviewBatchLimit?: undefined;
|
|
3264
3019
|
allowPartialSourceList?: undefined;
|
|
3265
|
-
includeRawImportResult?: undefined;
|
|
3266
3020
|
selections?: undefined;
|
|
3267
3021
|
selectionMode?: undefined;
|
|
3268
3022
|
};
|
|
@@ -3314,10 +3068,6 @@ export declare const allTools: ({
|
|
|
3314
3068
|
type: string;
|
|
3315
3069
|
description: string;
|
|
3316
3070
|
};
|
|
3317
|
-
includeRawImportResult: {
|
|
3318
|
-
type: string;
|
|
3319
|
-
description: string;
|
|
3320
|
-
};
|
|
3321
3071
|
provider?: undefined;
|
|
3322
3072
|
searchMode?: undefined;
|
|
3323
3073
|
organization_num_employees_ranges?: undefined;
|
|
@@ -3480,7 +3230,6 @@ export declare const allTools: ({
|
|
|
3480
3230
|
jobId?: undefined;
|
|
3481
3231
|
reviewBatchLimit?: undefined;
|
|
3482
3232
|
allowPartialSourceList?: undefined;
|
|
3483
|
-
includeRawImportResult?: undefined;
|
|
3484
3233
|
};
|
|
3485
3234
|
required: string[];
|
|
3486
3235
|
};
|
|
@@ -3562,7 +3311,6 @@ export declare const allTools: ({
|
|
|
3562
3311
|
jobId?: undefined;
|
|
3563
3312
|
reviewBatchLimit?: undefined;
|
|
3564
3313
|
allowPartialSourceList?: undefined;
|
|
3565
|
-
includeRawImportResult?: undefined;
|
|
3566
3314
|
selections?: undefined;
|
|
3567
3315
|
selectionMode?: undefined;
|
|
3568
3316
|
};
|
package/dist/tools/registry.js
CHANGED
|
@@ -2,7 +2,6 @@ import { authToolDefinitions } from "./auth.js";
|
|
|
2
2
|
import { blueprintCommitToolDefinitions } from "./blueprint-commit.js";
|
|
3
3
|
import { bootstrapToolDefinitions } from "./bootstrap.js";
|
|
4
4
|
import { campaignToolDefinitions } from "./campaigns.js";
|
|
5
|
-
import { campaignProcessingToolDefinitions } from "./campaign-processing.js";
|
|
6
5
|
import { cellToolDefinitions } from "./cells.js";
|
|
7
6
|
import { startCliLoginToolDef, waitForCliLoginToolDef } from "./cli-login.js";
|
|
8
7
|
import { contextToolDefinitions } from "./context.js";
|
|
@@ -29,7 +28,6 @@ import { verifyRowToolDefinitions } from "./verify-row.js";
|
|
|
29
28
|
import { workspaceToolDefinitions } from "./workspaces.js";
|
|
30
29
|
export const allTools = [
|
|
31
30
|
...campaignToolDefinitions,
|
|
32
|
-
...campaignProcessingToolDefinitions,
|
|
33
31
|
...authToolDefinitions,
|
|
34
32
|
startCliLoginToolDef,
|
|
35
33
|
waitForCliLoginToolDef,
|
package/package.json
CHANGED
|
@@ -36,11 +36,7 @@ allowed-tools:
|
|
|
36
36
|
- mcp__sellable__check_rubric
|
|
37
37
|
- mcp__sellable__create_campaign
|
|
38
38
|
- mcp__sellable__save_rubrics
|
|
39
|
-
-
|
|
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
|
|
39
|
+
- mcp__sellable__wait_for_rubric_results
|
|
44
40
|
- mcp__sellable__update_campaign_brief
|
|
45
41
|
- mcp__sellable__update_campaign
|
|
46
42
|
- mcp__sellable__get_campaign
|
|
@@ -56,6 +52,7 @@ allowed-tools:
|
|
|
56
52
|
- mcp__sellable__get_table_rows
|
|
57
53
|
- mcp__sellable__load_csv_linkedin_leads
|
|
58
54
|
- mcp__sellable__load_csv_domains
|
|
55
|
+
- mcp__sellable__queue_cells
|
|
59
56
|
- mcp__sellable__get_campaign_messages_preview
|
|
60
57
|
- mcp__sellable__attach_sequence
|
|
61
58
|
- mcp__sellable__attach_recommended_sequence
|
|
@@ -754,9 +751,10 @@ updates.
|
|
|
754
751
|
asset loader so they share the same config.
|
|
755
752
|
3. Follow that prompt and workflow config exactly.
|
|
756
753
|
4. For message generation, use the `post-find-leads-message-scout` agent when
|
|
757
|
-
available. The worker and parent-thread fallback must load
|
|
758
|
-
`
|
|
759
|
-
|
|
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:
|
|
760
758
|
do not draft from a checklist, local markdown artifact, or parent-thread
|
|
761
759
|
intuition. Use campaign state, campaign brief content, selected source state, and
|
|
762
760
|
initial campaign-table execution slice rows as the source of truth; do not read stale local
|
|
@@ -284,9 +284,9 @@ customer-facing source-choice labels.
|
|
|
284
284
|
|
|
285
285
|
## Post-Lead Workstreams
|
|
286
286
|
|
|
287
|
-
After `confirm_lead_list` copies a non-empty confirmed source into the campaign
|
|
288
|
-
|
|
289
|
-
immediately. Do not call
|
|
287
|
+
After `confirm_lead_list` copies a non-empty confirmed source into the campaign and
|
|
288
|
+
`get_rows_minimal({ tableId: workflowTableId })` proves rows exist, ask the
|
|
289
|
+
filter-choice question immediately. Do not call
|
|
290
290
|
`get_post_find_leads_scout_registry`, load filter/message subskill prompts, or
|
|
291
291
|
spawn post-lead workers before that question. The only customer-facing work
|
|
292
292
|
before the question should be a short campaign setup summary and the choice:
|
|
@@ -316,13 +316,14 @@ Run `post-find-leads-message-scout` as the background Message Draft Builder
|
|
|
316
316
|
whenever the host exposes it. It must load:
|
|
317
317
|
|
|
318
318
|
```text
|
|
319
|
-
get_subskill_prompt({ subskillName: "generate-messages
|
|
319
|
+
get_subskill_prompt({ subskillName: "generate-messages", offset, limit }) until hasMore=false
|
|
320
320
|
```
|
|
321
321
|
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
322
|
+
No shortcut message instructions are valid. If the host cannot launch the
|
|
323
|
+
agent, the parent fallback must run the same full prompt from live campaign
|
|
324
|
+
state before drafting. Do not render message review until
|
|
325
|
+
`messageDraftRecommendation` proves current campaign/table/execution-slice
|
|
326
|
+
`generate-messages` basis.
|
|
326
327
|
|
|
327
328
|
## Hard Gates
|
|
328
329
|
|
|
@@ -303,8 +303,8 @@ surface install status to the customer.
|
|
|
303
303
|
|
|
304
304
|
For post-lead work, call `get_post_find_leads_scout_registry` after
|
|
305
305
|
the user chooses filters, not before the filter-choice question. After
|
|
306
|
-
`confirm_lead_list` copies source rows and
|
|
307
|
-
sample, ask add-filters vs skip-filters
|
|
306
|
+
`confirm_lead_list` copies source rows and `get_rows_minimal` proves the first
|
|
307
|
+
review/process sample exists, ask add-filters vs skip-filters
|
|
308
308
|
immediately. Once the user answers, start `post-find-leads-message-scout` /
|
|
309
309
|
message generation from the same campaign/table basis. If the user chooses
|
|
310
310
|
filters, also start `post-find-leads-filter-scout`, move the browser to Filter
|