@sellable/install 0.1.188 → 0.1.189
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 +10 -4
- package/bin/sellable-install.mjs +87 -5
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -23,8 +23,9 @@ agent command for launching a campaign:
|
|
|
23
23
|
sellable create
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
Campaign creation, post drafting, and identity
|
|
27
|
-
or Codex, where the Sellable MCP tools and
|
|
26
|
+
Campaign creation, content capture/ideation, post drafting, and identity
|
|
27
|
+
interviews run inside Claude Code or Codex, where the Sellable MCP tools and
|
|
28
|
+
approval flows are available.
|
|
28
29
|
|
|
29
30
|
Install is auth-free by default. If you do not pass a token, the agent handles
|
|
30
31
|
Sellable sign-in on the first campaign run with a magic-link handoff.
|
|
@@ -69,13 +70,16 @@ source-scout agents.
|
|
|
69
70
|
Use the same public entrypoints in both hosts:
|
|
70
71
|
|
|
71
72
|
- Claude Code: `/sellable:create-campaign`
|
|
73
|
+
- Claude Code: `/sellable:content`
|
|
72
74
|
- Claude Code: `/sellable:interview`
|
|
73
75
|
- Claude Code: `/sellable:create-post`
|
|
74
76
|
- Codex: `$sellable:create-campaign`
|
|
77
|
+
- Codex: `$sellable:content`
|
|
75
78
|
- Codex: `$sellable:interview`
|
|
76
79
|
- Codex: `$sellable:create-post`
|
|
77
80
|
- Codex Desktop plugin: `sellable@sellable`
|
|
78
81
|
- Codex visible skill: `Sellable Create Campaign`
|
|
82
|
+
- Codex visible skill: `Sellable Content`
|
|
79
83
|
- Codex visible skill: `Sellable Identity Interview`
|
|
80
84
|
- Codex visible skill: `Sellable Create Post`
|
|
81
85
|
- Internal MCP workflow prompt: `create-campaign-v2`
|
|
@@ -83,8 +87,10 @@ Use the same public entrypoints in both hosts:
|
|
|
83
87
|
Do not ask users to run `/sellable:create-campaign-v2`,
|
|
84
88
|
`$sellable:create-campaign-v2`, `$sellable:load-voice`, or
|
|
85
89
|
`$sellable:sellable:create-campaign`. `create-campaign-v2` is loaded internally
|
|
86
|
-
by the campaign skill. `
|
|
87
|
-
|
|
90
|
+
by the campaign skill. `content` is the preferred entrypoint for adding
|
|
91
|
+
transcripts, recurring ideas, and post seeds. `create-post` remains a supported
|
|
92
|
+
direct drafting shortcut and loads voice internally, so there is no separate
|
|
93
|
+
public voice-loading command.
|
|
88
94
|
|
|
89
95
|
## Structured Questions
|
|
90
96
|
|
package/bin/sellable-install.mjs
CHANGED
|
@@ -155,7 +155,7 @@ Options:
|
|
|
155
155
|
|
|
156
156
|
Auth:
|
|
157
157
|
Install is auth-free by default. Sign in happens on the first run of
|
|
158
|
-
/sellable:create-campaign or /sellable:create-post in Claude Code or Codex,
|
|
158
|
+
/sellable:create-campaign, /sellable:content, or /sellable:create-post in Claude Code or Codex,
|
|
159
159
|
where the agent walks you through signup or sign-in and stores credentials
|
|
160
160
|
in ~/.sellable/config.json.
|
|
161
161
|
|
|
@@ -180,6 +180,7 @@ function printCreateCommandHint() {
|
|
|
180
180
|
console.log("");
|
|
181
181
|
printAgentBox("Using Claude Code?", "claude", [
|
|
182
182
|
{ label: "Campaign", command: "/sellable:create-campaign" },
|
|
183
|
+
{ label: "Content", command: "/sellable:content" },
|
|
183
184
|
{ label: "Post", command: "/sellable:create-post" },
|
|
184
185
|
{ label: "Interview", command: "/sellable:interview" },
|
|
185
186
|
]);
|
|
@@ -187,6 +188,7 @@ function printCreateCommandHint() {
|
|
|
187
188
|
console.log("");
|
|
188
189
|
printAgentBox("Using Codex?", "codex", [
|
|
189
190
|
{ label: "Campaign", command: "$sellable:create-campaign" },
|
|
191
|
+
{ label: "Content", command: "$sellable:content" },
|
|
190
192
|
{ label: "Post", command: "$sellable:create-post" },
|
|
191
193
|
{ label: "Interview", command: "$sellable:interview" },
|
|
192
194
|
]);
|
|
@@ -1289,6 +1291,76 @@ then retry \`get_subskill_prompt\`.
|
|
|
1289
1291
|
`;
|
|
1290
1292
|
}
|
|
1291
1293
|
|
|
1294
|
+
function contentSkillMd() {
|
|
1295
|
+
return `---
|
|
1296
|
+
name: content
|
|
1297
|
+
description: Add transcripts and rough ideas, cluster recurring themes, ideate post seeds, and hand draft requests to create-post.
|
|
1298
|
+
allowed-tools:
|
|
1299
|
+
- mcp__sellable__get_auth_status
|
|
1300
|
+
- mcp__sellable__get_subskill_prompt
|
|
1301
|
+
- mcp__sellable__get_subskill_asset
|
|
1302
|
+
- mcp__sellable__search_subskill_prompts
|
|
1303
|
+
- mcp__sellable__get_engage_memory
|
|
1304
|
+
- mcp__sellable__capture_post_idea
|
|
1305
|
+
- mcp__sellable__get_post_idea
|
|
1306
|
+
- mcp__sellable__list_post_ideas
|
|
1307
|
+
- mcp__sellable__save_hook_research
|
|
1308
|
+
- mcp__sellable__save_post_draft
|
|
1309
|
+
- mcp__sellable__get_post_draft
|
|
1310
|
+
- mcp__sellable__mark_post_published
|
|
1311
|
+
- mcp__sellable__list_published_posts
|
|
1312
|
+
- mcp__sellable__search_engagement_posts
|
|
1313
|
+
- mcp__sellable__fetch_linkedin_posts
|
|
1314
|
+
- mcp__sellable__fetch_linkedin_profile
|
|
1315
|
+
- mcp__sellable__record_engage_proven_search
|
|
1316
|
+
- mcp__sellable__upsert_engage_tracked_person
|
|
1317
|
+
- Read
|
|
1318
|
+
- Write
|
|
1319
|
+
- Edit
|
|
1320
|
+
- Glob
|
|
1321
|
+
- Grep
|
|
1322
|
+
---
|
|
1323
|
+
|
|
1324
|
+
# Sellable Content
|
|
1325
|
+
|
|
1326
|
+
Use this as the customer-facing entrypoint for the Sellable \`content\`
|
|
1327
|
+
workflow. It captures raw transcripts and rough notes, clusters recurring
|
|
1328
|
+
ideas, extracts story/proof/question cards, produces post seeds, and only drafts
|
|
1329
|
+
by handing off to the canonical \`create-post\` workflow.
|
|
1330
|
+
|
|
1331
|
+
## Bootstrap
|
|
1332
|
+
|
|
1333
|
+
MCP prompt access is required. Do not inspect repo files, run shell commands,
|
|
1334
|
+
use \`npm\`, \`node\`, local harness scripts, or read local prompt files to
|
|
1335
|
+
emulate this workflow.
|
|
1336
|
+
|
|
1337
|
+
If the Sellable MCP prompt tools are unavailable, stop and say this is a Codex
|
|
1338
|
+
install/reload problem. Tell the user to run
|
|
1339
|
+
\`npx -y ${INSTALL_PACKAGE_SPEC} --host all\`, fully quit and reopen Codex
|
|
1340
|
+
Desktop, then start a new thread.
|
|
1341
|
+
|
|
1342
|
+
## Execute Workflow
|
|
1343
|
+
|
|
1344
|
+
1. Call \`mcp__sellable__get_auth_status({})\` so research and save failures can
|
|
1345
|
+
be distinguished from local content capture.
|
|
1346
|
+
2. Load the canonical prompt via
|
|
1347
|
+
\`mcp__sellable__get_subskill_prompt({ subskillName: "content" })\`.
|
|
1348
|
+
If the response has \`hasMore=true\`, continue with \`nextOffset\` until
|
|
1349
|
+
\`hasMore=false\`.
|
|
1350
|
+
3. Follow the canonical prompt exactly. Use \`content\` for capture, clustering,
|
|
1351
|
+
ideation, and development. If the user asks for a draft, load and follow
|
|
1352
|
+
\`mcp__sellable__get_subskill_prompt({ subskillName: "create-post" })\`.
|
|
1353
|
+
4. Do not create a parallel post drafting flow. Do not write repo-local prompt
|
|
1354
|
+
files or append to legacy flat draft files.
|
|
1355
|
+
|
|
1356
|
+
## MCP Prompt Fallback
|
|
1357
|
+
|
|
1358
|
+
If exact subskill lookup fails, use
|
|
1359
|
+
\`mcp__sellable__search_subskill_prompts({ query: "content", includePublic: true, includeInternal: true })\`,
|
|
1360
|
+
then retry \`get_subskill_prompt\`.
|
|
1361
|
+
`;
|
|
1362
|
+
}
|
|
1363
|
+
|
|
1292
1364
|
function createPostSkillMd() {
|
|
1293
1365
|
return `---
|
|
1294
1366
|
name: create-post
|
|
@@ -1555,10 +1627,10 @@ function codexPluginSkills() {
|
|
|
1555
1627
|
soulMd: createCampaignSoulMd(),
|
|
1556
1628
|
},
|
|
1557
1629
|
{
|
|
1558
|
-
dir: "sellable-
|
|
1559
|
-
displayName: "Sellable
|
|
1560
|
-
description: "
|
|
1561
|
-
skillMd:
|
|
1630
|
+
dir: "sellable-content",
|
|
1631
|
+
displayName: "Sellable Content",
|
|
1632
|
+
description: "Add ideas, transcripts, clusters, and post seeds",
|
|
1633
|
+
skillMd: contentSkillMd(),
|
|
1562
1634
|
},
|
|
1563
1635
|
{
|
|
1564
1636
|
dir: "sellable-create-post",
|
|
@@ -1566,6 +1638,12 @@ function codexPluginSkills() {
|
|
|
1566
1638
|
description: "Capture ideas and draft LinkedIn posts in your voice",
|
|
1567
1639
|
skillMd: createPostSkillMd(),
|
|
1568
1640
|
},
|
|
1641
|
+
{
|
|
1642
|
+
dir: "sellable-interview",
|
|
1643
|
+
displayName: "Sellable Identity Interview",
|
|
1644
|
+
description: "Build durable identity and company memory",
|
|
1645
|
+
skillMd: interviewSkillMd(),
|
|
1646
|
+
},
|
|
1569
1647
|
];
|
|
1570
1648
|
}
|
|
1571
1649
|
|
|
@@ -2552,6 +2630,7 @@ function printNextSteps(installedHosts, authReused) {
|
|
|
2552
2630
|
if (hasClaude) {
|
|
2553
2631
|
printAgentBox("Using Claude Code?", "claude", [
|
|
2554
2632
|
{ label: "Campaign", command: "/sellable:create-campaign" },
|
|
2633
|
+
{ label: "Content", command: "/sellable:content" },
|
|
2555
2634
|
{ label: "Post", command: "/sellable:create-post" },
|
|
2556
2635
|
{ label: "Interview", command: "/sellable:interview" },
|
|
2557
2636
|
]);
|
|
@@ -2561,6 +2640,7 @@ function printNextSteps(installedHosts, authReused) {
|
|
|
2561
2640
|
if (hasCodex) {
|
|
2562
2641
|
printAgentBox("Using Codex?", "codex", [
|
|
2563
2642
|
{ label: "Campaign", command: "$sellable:create-campaign" },
|
|
2643
|
+
{ label: "Content", command: "$sellable:content" },
|
|
2564
2644
|
{ label: "Post", command: "$sellable:create-post" },
|
|
2565
2645
|
{ label: "Interview", command: "$sellable:interview" },
|
|
2566
2646
|
]);
|
|
@@ -2833,9 +2913,11 @@ async function main() {
|
|
|
2833
2913
|
console.log(` apiUrl: ${apiUrl}`);
|
|
2834
2914
|
console.log(` Continue in your agent:`);
|
|
2835
2915
|
console.log(` Claude Code: /sellable:create-campaign`);
|
|
2916
|
+
console.log(` Claude Code: /sellable:content`);
|
|
2836
2917
|
console.log(` Claude Code: /sellable:create-post`);
|
|
2837
2918
|
console.log(` Claude Code: /sellable:interview`);
|
|
2838
2919
|
console.log(` Codex: $sellable:create-campaign`);
|
|
2920
|
+
console.log(` Codex: $sellable:content`);
|
|
2839
2921
|
console.log(` Codex: $sellable:create-post`);
|
|
2840
2922
|
console.log(` Codex: $sellable:interview`);
|
|
2841
2923
|
process.exit(0);
|