@sellable/mcp 0.1.6 → 0.1.8

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 CHANGED
@@ -83,14 +83,14 @@ The token is provided when you generate it. Use `list_workspaces` +
83
83
  For customer/package installs, use the public installer:
84
84
 
85
85
  ```bash
86
- npx -y @sellable/install@0.1.6 --host codex --token skt_live_your_token_here --workspace-id your_workspace_id
86
+ npx -y @sellable/install@0.1.8 --host codex --token skt_live_your_token_here --workspace-id your_workspace_id
87
87
  ```
88
88
 
89
89
  If you already have `~/.sellable/config.json`, rerun/verify without rewriting
90
90
  auth:
91
91
 
92
92
  ```bash
93
- npx -y @sellable/install@0.1.6 --host codex
93
+ npx -y @sellable/install@0.1.8 --host codex
94
94
  sellable --verify-only --host codex
95
95
  ```
96
96
 
@@ -110,6 +110,33 @@ thread and select `Sellable Create Campaign`, or invoke
110
110
  The skill being visible only proves skill discovery; the plugin is what mounts
111
111
  the Sellable MCP tools for Codex Desktop.
112
112
 
113
+ ## Public Names And Host Commands
114
+
115
+ Use these names consistently:
116
+
117
+ - Claude Code command: `/sellable:create-campaign`
118
+ - Codex command: `$sellable:create-campaign`
119
+ - Codex Desktop plugin: `sellable@sellable`
120
+ - Codex visible skill: `Sellable Create Campaign`
121
+ - Codex skill frontmatter name: `create-campaign`
122
+ - MCP server name: `sellable`
123
+ - Internal workflow prompt: `create-campaign-v2`
124
+
125
+ Never tell users to run `/sellable:create-campaign-v2`,
126
+ `$sellable:create-campaign-v2`, or `$sellable:sellable:create-campaign`.
127
+ `create-campaign-v2` is an internal MCP subskill loaded by
128
+ `get_subskill_prompt({ subskillName: "create-campaign-v2" })`.
129
+
130
+ ## Structured Question Parity
131
+
132
+ Claude Code should ask intake and approval gates with `AskUserQuestion`.
133
+ Codex should ask them with `request_user_input` when it is exposed in an
134
+ interactive session. The installer enables Default mode support by writing
135
+ `default_mode_request_user_input = true` under `[features]` in
136
+ `~/.codex/config.toml`. `codex exec` is non-interactive and cannot show the
137
+ structured questionnaire UI, so it is only useful for smoke checks that stop
138
+ before human intake/approval.
139
+
113
140
  ## Usage
114
141
 
115
142
  ### From Sellable UI
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sellable/mcp",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "type": "module",
5
5
  "description": "Sellable MCP server for Claude Code and Codex campaign workflows",
6
6
  "main": "dist/index.js",
@@ -76,11 +76,18 @@ Validated draft directory:
76
76
  compatibility run where all upstream artifacts already exist.
77
77
  - Use the host-native structured question gate whenever it is exposed. In
78
78
  Claude Code, this is `AskUserQuestion`. In Codex, this is
79
- `request_user_input`. Treat them as equivalent approval/intake gates and
80
- persist the same draft artifacts after the user answers. If the session is
81
- non-interactive or the host does not expose either structured question tool,
82
- fall back to a normal chat question with the exact same choices and make the
83
- fallback explicit to the user.
79
+ `request_user_input` (enabled in Default mode by
80
+ `[features].default_mode_request_user_input = true`, not available in
81
+ `codex exec`). Treat them as equivalent approval/intake gates and persist the
82
+ same draft artifacts after the user answers. If an interactive
83
+ Codex session does not expose `request_user_input`, do not silently degrade to
84
+ a plain chat question; stop and tell the user: `Codex has not exposed
85
+ request_user_input in this session. Can I update ~/.codex/config.toml with
86
+ [features].default_mode_request_user_input = true? After that, fully quit and
87
+ reopen Codex, then rerun $sellable:create-campaign.` If they decline, tell them
88
+ to switch to Plan/collaboration mode and rerun `$sellable:create-campaign`. In
89
+ non-interactive `codex exec`, structured user input is unavailable by design;
90
+ ask in chat only when the run is explicitly a non-interactive smoke/rehearsal.
84
91
  - Fast Intake Mode is mandatory for hosted/rehearsal net-new runs. Ask the
85
92
  first founder strategy/source question packet in under 60 seconds. Before
86
93
  that first packet, the first assistant turn may only call
@@ -101,10 +101,15 @@ Status: approval-packet
101
101
  The same assistant turn must then use the host-native structured question gate
102
102
  with the six commit choices. In Claude Code, call `AskUserQuestion`. In Codex,
103
103
  call `request_user_input` when that tool is available. Do not show a standalone
104
- commit-gate question in a later turn without the approval packet above it. If
105
- the session is non-interactive or neither structured question tool is exposed,
106
- fall back to a normal chat question with the exact same choices and say that the
107
- structured gate is unavailable in this session.
104
+ commit-gate question in a later turn without the approval packet above it. If an
105
+ interactive Codex session does not expose `request_user_input`, do not silently
106
+ fall back to chat. Stop and ask permission to update `~/.codex/config.toml`
107
+ with `[features].default_mode_request_user_input = true`, then tell the user to
108
+ fully quit and reopen Codex before rerunning `$sellable:create-campaign`. If the
109
+ user declines the settings update, tell them to switch to Plan/collaboration
110
+ mode and rerun `$sellable:create-campaign`. A normal chat question is acceptable
111
+ only for non-interactive `codex exec` smoke/rehearsal runs because structured
112
+ user input is unavailable by design there.
108
113
 
109
114
  The packet should read like an AI GTM engineer explaining the campaign, not an
110
115
  internal validation report. Start with the practical direction in plain