@sellable/install 0.1.303 → 0.1.304
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 +101 -10
- package/bin/sellable-install.mjs +1200 -55
- package/lib/runtime-verify.mjs +4 -0
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Sellable Installer
|
|
2
2
|
|
|
3
|
-
Installs Sellable MCP for Claude Code and
|
|
3
|
+
Installs Sellable MCP for Claude Code, Codex, and Hermes.
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
6
|
curl -fsSL "https://app.sellable.dev/api/v2/cli/install" | sh
|
|
@@ -16,7 +16,9 @@ Windows users can use PowerShell or Windows Terminal:
|
|
|
16
16
|
iwr "https://app.sellable.dev/api/v2/cli/install.ps1" | iex
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
After install, restart Codex Desktop so
|
|
19
|
+
After install, restart Codex Desktop, Claude Code, or Hermes so Sellable MCP
|
|
20
|
+
tools and skills reload. In an active Hermes session, `/reload-mcp` and
|
|
21
|
+
`/reload-skills` can reload the new config.
|
|
20
22
|
|
|
21
23
|
Verify the runtime tools with:
|
|
22
24
|
|
|
@@ -32,11 +34,11 @@ sellable create
|
|
|
32
34
|
```
|
|
33
35
|
|
|
34
36
|
Campaign creation, sender send refills, foundation memory, content
|
|
35
|
-
capture/ideation, and post drafting run inside Claude Code
|
|
36
|
-
Sellable MCP tools and approval flows are available.
|
|
37
|
+
capture/ideation, and post drafting run inside Claude Code, Codex, or Hermes,
|
|
38
|
+
where the Sellable MCP tools and approval flows are available.
|
|
37
39
|
|
|
38
40
|
Install is auth-free by default. The normal path is first-run login: launch a
|
|
39
|
-
Sellable workflow in Claude Code or
|
|
41
|
+
Sellable workflow in Claude Code, Codex, or Hermes and the agent handles Sellable
|
|
40
42
|
sign-in with a browser magic-link handoff.
|
|
41
43
|
|
|
42
44
|
The installer uses package stdio MCP by default:
|
|
@@ -45,7 +47,7 @@ The installer uses package stdio MCP by default:
|
|
|
45
47
|
npm exec --yes --package @sellable/mcp@latest -- sellable-mcp
|
|
46
48
|
```
|
|
47
49
|
|
|
48
|
-
That keeps new Claude Code/Codex MCP starts on the latest stable package. The
|
|
50
|
+
That keeps new Claude Code/Codex/Hermes MCP starts on the latest stable package. The
|
|
49
51
|
MCP server also checks npm at startup and during `get_auth_status`, caching the
|
|
50
52
|
result at `~/.sellable/update-check.json` so users are prompted to rerun the
|
|
51
53
|
latest installer only when an update is actually available.
|
|
@@ -81,7 +83,81 @@ Auth is stored once at:
|
|
|
81
83
|
~/.sellable/config.json
|
|
82
84
|
```
|
|
83
85
|
|
|
84
|
-
|
|
86
|
+
## Hermes Profile-Scoped Installs
|
|
87
|
+
|
|
88
|
+
For a single local Hermes profile, point Sellable auth and memory at the profile
|
|
89
|
+
instead of the global `~/.sellable/config.json`:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
profile="$HOME/.hermes/profiles/acme"
|
|
93
|
+
sellable --host hermes \
|
|
94
|
+
--sellable-config-path "$profile/sellable/config.json" \
|
|
95
|
+
--sellable-configs-dir "$profile/sellable/configs"
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
That writes `SELLABLE_CONFIG_PATH` and `SELLABLE_CONFIGS_DIR` into
|
|
99
|
+
`mcp_servers.sellable.env`, so first-run login, `get_auth_status`, workspace
|
|
100
|
+
switches, and Sellable memory all use the same profile-local files. Hosted MCP
|
|
101
|
+
mode does not receive local filesystem paths.
|
|
102
|
+
|
|
103
|
+
For zero-shot local or Hostinger/Linux VPS bootstrap, use the profile command:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
sellable hermes profile bootstrap \
|
|
107
|
+
--profile acme \
|
|
108
|
+
--profiles-root /srv/hermes/profiles \
|
|
109
|
+
--workspace-id ws_acme \
|
|
110
|
+
--workspace-name Acme \
|
|
111
|
+
--token-file /run/secrets/sellable-acme-token \
|
|
112
|
+
--json
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
It creates:
|
|
116
|
+
|
|
117
|
+
```text
|
|
118
|
+
/srv/hermes/profiles/acme/config.yaml
|
|
119
|
+
/srv/hermes/profiles/acme/sellable/config.json
|
|
120
|
+
/srv/hermes/profiles/acme/sellable/configs/
|
|
121
|
+
/srv/hermes/profiles/acme/skills/sellable/
|
|
122
|
+
/srv/hermes/profiles/acme/.env # only when Slack token inputs are supplied
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
If no token is supplied, bootstrap still creates a pending
|
|
126
|
+
`sellable/config.json` so the profile path is concrete from the first MCP
|
|
127
|
+
launch. Finish auth with:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
sellable auth set <token> --workspace-id <workspace_id> \
|
|
131
|
+
--sellable-config-path /srv/hermes/profiles/acme/sellable/config.json
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Slack Socket Mode tokens can be written profile-locally:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
sellable hermes profile bootstrap \
|
|
138
|
+
--profile acme \
|
|
139
|
+
--profiles-root /srv/hermes/profiles \
|
|
140
|
+
--workspace-id ws_acme \
|
|
141
|
+
--slack-bot-token "$SLACK_BOT_TOKEN" \
|
|
142
|
+
--slack-app-token "$SLACK_APP_TOKEN"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Customer profiles should use customer-scoped Sellable credentials. A shared
|
|
146
|
+
Sellable admin token can work for internal admin automation, but it is weaker
|
|
147
|
+
isolation and should not be the default for customer profiles. After changing
|
|
148
|
+
Hermes profile config, restart the gateway/session or run `/reload-mcp` and
|
|
149
|
+
`/reload-skills`.
|
|
150
|
+
|
|
151
|
+
Validate the active profile with the same path inputs:
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
SELLABLE_CONFIG_PATH=/srv/hermes/profiles/acme/sellable/config.json \
|
|
155
|
+
SELLABLE_CONFIGS_DIR=/srv/hermes/profiles/acme/sellable/configs \
|
|
156
|
+
sellable --verify-only --host hermes --json \
|
|
157
|
+
--artifact /srv/hermes/profiles/acme/sellable/verify-runtime.json
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Claude Code, Codex, and Hermes are configured to launch the same packaged MCP server. The
|
|
85
161
|
installer also writes Sellable agent definitions from the packaged `agents/`
|
|
86
162
|
registry, but normal create-campaign runs use only the Message Drafting
|
|
87
163
|
background agent (`post-find-leads-message-scout`). Source discovery and
|
|
@@ -92,7 +168,7 @@ source-scout agents.
|
|
|
92
168
|
|
|
93
169
|
## Names
|
|
94
170
|
|
|
95
|
-
Use the same public entrypoints
|
|
171
|
+
Use the same public entrypoints across supported hosts:
|
|
96
172
|
|
|
97
173
|
- Claude Code: `/sellable:create-campaign`
|
|
98
174
|
- Claude Code: `/sellable:create-ab-test`
|
|
@@ -110,6 +186,14 @@ Use the same public entrypoints in both hosts:
|
|
|
110
186
|
- Codex: `$sellable:create-post`
|
|
111
187
|
- Codex: `$sellable:refresh-sender-engagement`
|
|
112
188
|
- Codex: `$sellable:refill-sends`
|
|
189
|
+
- Hermes: `/sellable-create-campaign`
|
|
190
|
+
- Hermes: `/sellable-create-ab-test`
|
|
191
|
+
- Hermes: `/sellable-create-evergreen-campaigns`
|
|
192
|
+
- Hermes: `/sellable-foundation`
|
|
193
|
+
- Hermes: `/sellable-content`
|
|
194
|
+
- Hermes: `/sellable-create-post`
|
|
195
|
+
- Hermes: `/sellable-refresh-sender-engagement`
|
|
196
|
+
- Hermes: `/sellable-refill-sends`
|
|
113
197
|
- Codex Desktop plugin: `sellable@sellable`
|
|
114
198
|
- Codex visible skill: `Sellable Create Campaign`
|
|
115
199
|
- Codex visible skill: `Sellable Create A/B Test`
|
|
@@ -125,7 +209,8 @@ Use the same public entrypoints in both hosts:
|
|
|
125
209
|
|
|
126
210
|
Do not ask users to run `/sellable:create-campaign-v2`,
|
|
127
211
|
`$sellable:create-campaign-v2`, `$sellable:load-voice`, or
|
|
128
|
-
`$sellable:sellable:create-campaign`.
|
|
212
|
+
`$sellable:sellable:create-campaign`. Do not ask Hermes users to run
|
|
213
|
+
`/sellable:create-campaign`; use `/sellable-create-campaign`. `create-campaign-v2` is loaded internally
|
|
129
214
|
by the campaign skill. `foundation` is the preferred entrypoint for durable
|
|
130
215
|
founder/company memory. `content` is the preferred entrypoint for adding
|
|
131
216
|
transcripts, recurring ideas, and post seeds. `create-post` remains a supported
|
|
@@ -140,6 +225,12 @@ mode support by writing `default_mode_request_user_input = true` under
|
|
|
140
225
|
`[features]` in `~/.codex/config.toml`. `codex exec` is non-interactive, so it
|
|
141
226
|
cannot show the structured questionnaire UI.
|
|
142
227
|
|
|
228
|
+
Hermes skills use plain chat for setup and approval questions unless a
|
|
229
|
+
Hermes-native approval tool is visible in the current session. Hermes exposes
|
|
230
|
+
Sellable MCP tools as `mcp_sellable_<tool>`, for example
|
|
231
|
+
`mcp_sellable_get_auth_status`, `mcp_sellable_start_cli_login`, and
|
|
232
|
+
`mcp_sellable_wait_for_cli_login`.
|
|
233
|
+
|
|
143
234
|
For Codex Desktop, the installer also writes a local Sellable plugin bundle into
|
|
144
235
|
`~/.sellable/codex-marketplace`, includes the Sellable skill entrypoints, and
|
|
145
236
|
enables it in `~/.codex/config.toml`.
|
|
@@ -157,4 +248,4 @@ The installer writes compatibility cache aliases for recent Codex plugin
|
|
|
157
248
|
versions so stale Desktop skill links resolve to the current wrapper instead of
|
|
158
249
|
showing file/version debugging to the user.
|
|
159
250
|
|
|
160
|
-
If only one host is installed, `--host all` installs the available host and tells you how to add the
|
|
251
|
+
If only one host is installed, `--host all` installs the available host and tells you how to add the others later.
|