@sellable/install 0.1.282 → 0.1.283

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sellable/install",
3
- "version": "0.1.282",
3
+ "version": "0.1.283",
4
4
  "type": "module",
5
5
  "description": "One-command installer for Sellable MCP in Claude Code and Codex",
6
6
  "bin": {
@@ -62,13 +62,15 @@ long-form contract below:
62
62
  callable, return `blocked: missing_visible_or_durable_lane_worker_runtime`
63
63
  before mutation.
64
64
  4. Write one compact prompt file per selected lane using the matching
65
- `createCampaignGoals[].goalPrompt`, plus only the receipt path and canonical
66
- receipt requirement. Do not paste the full evergreen skill, lane packet,
67
- receipt schema, repair history, or verifier checklist into the worker prompt.
68
- The worker goal is simple: run `$sellable:create-campaign` normally for that
69
- campaign goal, use the evergreen-selected provider/source only as internal
70
- sourcing metadata, and write the receipt. The parent does not create campaign
71
- shells.
65
+ `createCampaignGoals[].goalPrompt` as the authoritative campaign task, plus
66
+ only the lane packet, receipt path, side-effect caps, and canonical receipt
67
+ requirement. Paste the goal prompt verbatim; do not replace it with a
68
+ handcrafted `Goal:` paragraph. Do not paste the full evergreen skill, receipt
69
+ schema, repair history, verifier checklist, or lane-specific copy checklist
70
+ into the worker prompt. The worker goal is simple: run
71
+ `$sellable:create-campaign` normally for that campaign goal, use the
72
+ evergreen-selected provider/source only as internal sourcing metadata, and
73
+ write the receipt. The parent does not create campaign shells.
72
74
  5. Collect fresh durable receipts, verify with the original planRevision and
73
75
  selectedActionIds, then run the idempotency plan and show sample messages.
74
76
 
@@ -497,10 +499,17 @@ path/thread id, stop with `blocked: parent_mutated_before_worker_receipt` and
497
499
  do not continue setup in the parent.
498
500
  Short form: dispatch every selected lane worker before shell creation.
499
501
  Short form: do not call `setup_evergreen_campaigns` with `mode:"apply"` from the parent.
500
- Use a compact worker prompt: include lane packet JSON, original selectedActionIds,
501
- original planRevision, parent postEngagerSenderIds, parent sharedSenderIds,
502
- receiptArtifactPath, workspace id, sender ids, side-effect caps, and the
503
- instruction to load packaged prompts through MCP.
502
+ Use a compact worker prompt: include the exact matching
503
+ `createCampaignGoals[].goalPrompt`, lane packet JSON, original
504
+ selectedActionIds, original planRevision, parent postEngagerSenderIds, parent
505
+ sharedSenderIds, receiptArtifactPath, workspace id, sender ids, side-effect
506
+ caps, and the instruction to load packaged prompts through MCP. The worker
507
+ prompt must explicitly state the authority order:
508
+ `createCampaignGoals[].goalPrompt` first, then loaded `$sellable:create-campaign`
509
+ / `create-campaign-v2` / `generate-messages` prompts and assets, then evergreen
510
+ lane/receipt proof requirements. Evergreen packet fields and receipt rules are
511
+ operational proof context only; they must not become campaign brief copy,
512
+ message-writing instructions, or generated customer-facing text.
504
513
  The worker prompt must include the exact filter status rule:
505
514
  `filterDecisionReceipt.status:"applied"` only; never `completed`, `confirmed`,
506
515
  `done`, or any other alias.
@@ -542,7 +551,9 @@ worker with stdin redirected from that file:
542
551
 
543
552
  ```
544
553
  codex -a never -s danger-full-access exec --skip-git-repo-check -m <worker-model> -C <repo> -o <worker-final-file> - <<'WORKER_PROMPT'
545
- Use $sellable:create-evergreen-campaigns as the governing skill for this one lane worker.
554
+ Use $sellable:create-campaign as the governing campaign workflow for this one lane worker.
555
+ Use the evergreen plan/packet below only for lane scope, source metadata,
556
+ postconditions, side-effect caps, and durable receipt proof.
546
557
 
547
558
  Workspace id: <workspaceId>
548
559
  Parent planRevision: <planRevision>
@@ -558,6 +569,24 @@ If your runtime exposes a goal tool, create or maintain this exact goal:
558
569
  complete action <actionId> only when <receiptArtifactPath> exists as valid JSON
559
570
  for this lane or when a blocked receipt has been written at that same path.
560
571
 
572
+ Create-campaign goal prompt (authoritative; paste verbatim from the matching
573
+ createCampaignGoals[].goalPrompt):
574
+ <createCampaignGoalPrompt>
575
+
576
+ Authority order:
577
+ 1. The create-campaign goal prompt above is the campaign task.
578
+ 2. Loaded `$sellable:create-campaign`, `create-campaign-v2`, and
579
+ `generate-messages` prompts/assets own the campaign brief and message
580
+ strategy.
581
+ 3. The evergreen lane packet and receipt rules below are operational scope and
582
+ proof requirements only.
583
+
584
+ Do not paste evergreen lane keys, provider/source names, receipt terms, setup
585
+ plan terminology, verifier fields, or workflow mechanics into the campaign
586
+ brief or generated customer-facing messages. Do not add evergreen-authored
587
+ message-writing rules to the brief; let the loaded create-campaign and
588
+ generate-messages workflow do its job.
589
+
561
590
  Worker lane packet JSON:
562
591
  <lane packet JSON>
563
592
 
@@ -587,8 +616,9 @@ WORKER_PROMPT
587
616
  codex -a never -s danger-full-access exec --skip-git-repo-check -m <worker-model> -C <repo> -o <worker-final-file> - < <worker-prompt-file>
588
617
  ```
589
618
 
590
- If any placeholder cannot be filled from the current lane packet, do not inspect
591
- the filesystem or rerun inventory; stop with `blocked: worker_dispatch_stalled`.
619
+ If any placeholder cannot be filled from the current plan, matching
620
+ `createCampaignGoals[]` entry, or lane packet, do not inspect the filesystem or
621
+ rerun inventory; stop with `blocked: worker_dispatch_stalled`.
592
622
  `multi_agent_v1.spawn_agent`, raw `spawn_agent`, or any opaque Task/subagent
593
623
  runtime that cannot expose a visible thread id or durable receipt artifact is
594
624
  not accepted as command-level UAT proof and must not be used for mutating
@@ -1276,7 +1306,8 @@ Message, and verify current-revision sample messages before final completion.
1276
1306
  Short form: Do not pass the warm template into Shared Signal Discovery or Shared Cold Fallback.
1277
1307
  Short form: Shared lanes must reject generic product-summary samples.
1278
1308
  Short form: Shared lanes must reject three nearly identical samples.
1279
- Short form: Shared lanes must reject unsupported intent-assumptive hedges; Shared Signal Discovery may use Dotwork-style topic bridges like "saw you might be interested in [topic], so hope this is relevant", "saw you in a few conversations about [topic], so hope this is relevant", or "hope this is relevant if [topic] is part of the plan" when the source evidence supports the topic and the line does not claim engagement or expose source mechanics.
1309
+ Short form: Shared lanes must reject unsupported low-confidence relevance hedges.
1310
+ Short form: Shared lane message quality is owned by the packaged generate-messages prompt and validation; evergreen does not author source-thread bridge phrasing.
1280
1311
  Short form: Shared lanes must reject internal workflow vocabulary.
1281
1312
  Short form: revise or rerun the packaged create-campaign/generate-messages path.
1282
1313
  - **Post Engagers** first-message style: short, casual, references the
@@ -1317,21 +1348,12 @@ Message, and verify current-revision sample messages before final completion.
1317
1348
  product summaries, or repeated structure are bad. If the first generated
1318
1349
  batch violates these rules, rerun, but record that as a repaired UAT path
1319
1350
  rather than the desired zero-shot path.
1320
- Use the Dotwork gold-standard shape for Shared Signal Discovery samples
1321
- when the row supports a topic-level weak signal: "saw you might be
1322
- interested in [topic], so hope this is relevant", "saw you in a few
1323
- conversations about [topic], so hope this is relevant", or "saw you in a
1324
- few conversations around [topic], so hope this is relevant". These bridges
1325
- are allowed only when source evidence supports the topic and the line does
1326
- not claim a reaction, comment, sender-authored post, or other engagement
1327
- that is not proven. Do not use "found you in a thread" or other raw
1328
- source/discovery mechanics.
1329
- Shared Signal Discovery InMail subjects should follow the Dotwork plus-sign
1330
- A + B + C pattern: concrete topic + buyer outcome + useful artifact/picture,
1331
- for example "initiatives + business outcomes + one live picture".
1332
- Translate source/tool terms into prospect-facing business language; do not
1333
- put internal workflow
1334
- vocabulary such as "Codex-style workflow", "MCP", "agent workflows",
1351
+ Shared Signal Discovery samples may use a supported topic bridge such as
1352
+ "saw you around conversations about [high-level topic], so hope this is
1353
+ relevant" when the topic is grounded in source evidence and not
1354
+ activity-log phrasing. Translate source/tool terms into prospect-facing
1355
+ business language; do not put internal workflow vocabulary such as
1356
+ "Codex-style workflow", "MCP", "agent workflows",
1335
1357
  "Claude Code", or "Claude-style agent workflows" in customer-facing
1336
1358
  message one. Also avoid generic product-process nouns such as "dashboard",
1337
1359
  "workflow", "source", "send-ready copy", "reviewed prospect lists",
@@ -1342,7 +1364,8 @@ Message, and verify current-revision sample messages before final completion.
1342
1364
  Short form: Shared Signal Discovery uses no self-intro such as "I'm building Sellable".
1343
1365
  Short form: Shared Signal Discovery uses no self-intro such as "We're building Sellable".
1344
1366
  Short form: Shared Signal Discovery uses no "I've put together".
1345
- Short form: topic-level bridges, including "saw you might be interested in [topic], so hope this is relevant", "saw you in a few conversations about/around [topic], so hope this is relevant", and "hope this is relevant if [topic] is part of the plan", are allowed for Shared Signal Discovery when evidence-backed and not engagement-claiming; do not use bare "might be interested" as a generic intent claim.
1367
+ Short form: Shared Signal Discovery may use "saw you around conversations about [topic], so hope this is relevant" when source-supported.
1368
+ Short form: topic-level bridge rules are owned by the packaged generate-messages prompt and validation, not by the evergreen wrapper.
1346
1369
  Short form: no internal workflow vocabulary such as "Codex-style workflow", "MCP", "agent workflows", "Claude Code", or "Claude-style agent workflows".
1347
1370
  - **Shared Cold Fallback** first-message style: cold, direct, and cohesive.
1348
1371
  It must not pretend there was engagement, must not say "saw you pop up",
@@ -1358,14 +1381,15 @@ Message, and verify current-revision sample messages before final completion.
1358
1381
  Sellable/Codex/Claude-Code feature summary
1359
1382
  across prospects. This is a single-message cold path unless the approved
1360
1383
  create-campaign message workflow proves a better delivery format.
1361
- Do not use source-thread hedges such as "hope this is relevant", "might be
1362
- interested", or "saw you in a few conversations" in Shared Cold Fallback.
1363
- Start from a concrete role, company, or buyer-problem observation instead.
1364
- Do not use a repeated
1365
- product-definition paragraph such as "Sellable is a GTM system" across
1366
- samples; every reviewed cold sample should be specific enough to the role,
1367
- company, or problem that the three sample messages do not share the same
1368
- body skeleton.
1384
+ Do not open with "hope this is relevant" or a similar low-confidence
1385
+ relevance hedge in Shared Cold Fallback. Do not use a repeated product-definition paragraph such
1386
+ as "Sellable is a GTM system" across samples; every reviewed cold sample
1387
+ should be specific enough to the role, company, or problem that the three
1388
+ sample messages do not share the same body skeleton.
1389
+ Do not use source-thread hedges such as "might be interested", "saw you
1390
+ around conversations about...", or "saw you in a few conversations" in
1391
+ Shared Cold Fallback. Start from a concrete role, company, or buyer-problem
1392
+ observation instead.
1369
1393
  Do not use mechanical Sellable process language such as "campaign idea into
1370
1394
  prospects, filters, messages, and sequence setup", "sequence-prospects",
1371
1395
  "dashboard overhead", "campaign map", "send-ready copy", or "reviewed
@@ -1382,7 +1406,8 @@ Message, and verify current-revision sample messages before final completion.
1382
1406
  Short form: Shared Cold Fallback uses no "I've put together".
1383
1407
  Short form: Shared Cold Fallback uses no opt-out shrug such as "If this isn't relevant, ignore me".
1384
1408
  Short form: Shared Cold Fallback uses no product-stack dump.
1385
- Short form: no "hope this is relevant", "might be interested", or "saw you in a few conversations" in Shared Cold Fallback; Shared Signal Discovery has the topic-level conversation-bridge exception above.
1409
+ Short form: Shared Cold Fallback uses no low-confidence relevance hedge such as "hope this is relevant".
1410
+ Short form: no "hope this is relevant", "might be interested", "saw you around conversations about", or "saw you in a few conversations" in Shared Cold Fallback; Shared Signal Discovery has the topic-level conversation-bridge exception above.
1386
1411
  Short form: no repeated product-definition paragraph such as "Sellable is a GTM system".
1387
1412
  - Customer-visible evergreen lanes must enable ICP filtering before Message
1388
1413
  Drafting. This applies to Post Engagers, Shared Signal Discovery, and
@@ -1483,13 +1508,18 @@ Message, and verify current-revision sample messages before final completion.
1483
1508
  or a product-stack dump that repeats the same
1484
1509
  Sellable/Codex/Claude-Code feature summary across prospects. For all
1485
1510
  shared lanes, reject generic product-summary samples, repeated
1486
- near-identical samples, intent-assumptive hedges such as "might be
1487
- interested", source-context mismatches such as "saw you in a few
1488
- conversations" in Shared Cold Fallback, internal workflow vocabulary, any
1489
- sample with non-empty `issues`, and any preserved Post Engagers opener;
1490
- revise or rerun the packaged create-campaign/generate-messages path before
1491
- reporting completion. Do not approve or final-report samples
1492
- with `verdict:"passed"` and non-empty `issues`.
1511
+ near-identical samples, unsupported low-confidence relevance hedges, internal
1512
+ workflow vocabulary, any sample with non-empty `issues`, and any preserved
1513
+ Post Engagers opener; revise or rerun the packaged
1514
+ create-campaign/generate-messages path before reporting completion. Do not
1515
+ approve or final-report samples with `verdict:"passed"` and non-empty
1516
+ `issues`.
1517
+ Shared Signal Discovery samples may use `"saw you around conversations
1518
+ about [high-level topic], so hope this is relevant"` when the topic is
1519
+ supported by source evidence and not activity-log phrasing. Shared Cold
1520
+ Fallback samples must still reject source/conversation hedges such as
1521
+ `"hope this is relevant"`, `"might be interested"`, or `"saw you in a few
1522
+ conversations"`.
1493
1523
  - The first review batch exists and at least 3 review rows have generated
1494
1524
  messages from the approved brief. If fewer than 3 usable rows exist, report
1495
1525
  the actual count and why.