claudemesh-cli 1.27.0 → 1.27.2
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/dist/entrypoints/cli.js
CHANGED
|
@@ -103,7 +103,7 @@ __export(exports_urls, {
|
|
|
103
103
|
VERSION: () => VERSION,
|
|
104
104
|
URLS: () => URLS
|
|
105
105
|
});
|
|
106
|
-
var URLS, VERSION = "1.27.
|
|
106
|
+
var URLS, VERSION = "1.27.2", env;
|
|
107
107
|
var init_urls = __esm(() => {
|
|
108
108
|
URLS = {
|
|
109
109
|
BROKER: process.env.CLAUDEMESH_BROKER_URL ?? "wss://ic.claudemesh.com/ws",
|
|
@@ -14595,15 +14595,56 @@ Once \`claudemesh install\` has run (registers MCP entry + starts daemon service
|
|
|
14595
14595
|
| \`--groups "name:role,name2:role2,all"\` | the group selection prompt | comma-separated \`<groupname>:<role>\` entries; the literal \`all\` joins \`@all\` |
|
|
14596
14596
|
| \`--role <lead\\|member\\|observer>\` | the role prompt | applied to all groups in \`--groups\` that didn't specify their own |
|
|
14597
14597
|
| \`--message-mode <push\\|inbox>\` | the message-mode prompt | \`push\` (default) emits \`<channel>\` notifications mid-turn; \`inbox\` only buffers — quieter for headless agents |
|
|
14598
|
-
| \`--system-prompt <
|
|
14598
|
+
| \`--system-prompt <text>\` | nothing — pure pass-through | forwarded to \`claude --system-prompt\` (overrides default; pass a string, not a path) |
|
|
14599
14599
|
| \`--resume <session-id>\` | nothing — pure pass-through | forwarded to \`claude --resume\` to continue a prior Claude Code session |
|
|
14600
|
-
| \`--continue\` | nothing — pure pass-through | forwarded to \`claude --continue\` |
|
|
14600
|
+
| \`--continue\` | nothing — pure pass-through | forwarded to \`claude --continue\` (resumes the last session in this cwd) |
|
|
14601
14601
|
| \`-y\` / \`--yes\` | every confirmation prompt | including the "you'll skip ALL permission prompts" gate. **Use for autonomous agents; omit for shared/multi-person meshes.** |
|
|
14602
|
-
|
|
|
14602
|
+
| \`--quiet\` | the wizard + welcome banner | suppresses the launch wizard and banner. Combine with \`-y\` for true headless: \`--quiet\` alone won't bypass Claude's permission prompts, so a script using only \`--quiet\` will hang on the first tool call. |
|
|
14603
14603
|
| \`--\` | (separator) | everything after \`--\` is forwarded verbatim to \`claude\`. Example: \`claudemesh launch --name X -y -- --resume abc123 --model opus\` |
|
|
14604
14604
|
|
|
14605
|
+
> **All twelve flags are end-to-end wired as of \`claudemesh-cli@1.27.1\`.** Earlier builds silently dropped \`--role\`, \`--groups\`, \`--message-mode\`, \`--system-prompt\`, \`--continue\`, and \`--quiet\` at the CLI entrypoint — they were declared but never reached \`runLaunch\`. If a script targets older versions, those flags are no-ops.
|
|
14606
|
+
|
|
14605
14607
|
### Wizard-free spawn templates
|
|
14606
14608
|
|
|
14609
|
+
#### Canonical fully-populated spawn (every flag set explicitly)
|
|
14610
|
+
|
|
14611
|
+
The kitchen-sink form — copy, set every value, and the session boots without a single interactive prompt or banner. Use as a base when scripting from cron, hooks, CI, or another agent:
|
|
14612
|
+
|
|
14613
|
+
\`\`\`bash
|
|
14614
|
+
claudemesh launch \\
|
|
14615
|
+
--name "ci-bot" \\
|
|
14616
|
+
--mesh openclaw \\
|
|
14617
|
+
--role member \\
|
|
14618
|
+
--groups "frontend:lead,reviewers:observer,all" \\
|
|
14619
|
+
--message-mode inbox \\
|
|
14620
|
+
--system-prompt "$(cat ~/agents/ci-bot.md)" \\
|
|
14621
|
+
--quiet \\
|
|
14622
|
+
-y \\
|
|
14623
|
+
-- \\
|
|
14624
|
+
--model opus \\
|
|
14625
|
+
--resume "$LAST_SESSION_ID"
|
|
14626
|
+
\`\`\`
|
|
14627
|
+
|
|
14628
|
+
Annotated:
|
|
14629
|
+
|
|
14630
|
+
| Position | Value | Effect |
|
|
14631
|
+
|---|---|---|
|
|
14632
|
+
| \`--name "ci-bot"\` | identity | what peers see in \`peer list\` and \`<channel from_name>\` — pin so peers always see the same name across machines |
|
|
14633
|
+
| \`--mesh openclaw\` | workspace | required when you have ≥2 joined meshes; safe to include even with 1 (becomes a no-op assertion) |
|
|
14634
|
+
| \`--role member\` | session label | free-form tag used by group conventions; common values: \`lead\`, \`member\`, \`observer\`, \`bot\`, \`oncall\` |
|
|
14635
|
+
| \`--groups "frontend:lead,..."\` | group memberships | comma-separated \`<group>:<role>\` pairs; bare \`all\` joins \`@all\` with no role |
|
|
14636
|
+
| \`--message-mode inbox\` | delivery | \`push\` interrupts mid-turn (default); \`inbox\` buffers silently; \`off\` disables messages but keeps tool calls |
|
|
14637
|
+
| \`--system-prompt "..."\` | claude system prompt | overrides Claude's default. Pass a string, not a path — wrap with \`$(cat …)\` if you keep prompts in files |
|
|
14638
|
+
| \`--quiet\` | output | suppress the wizard and banner — clean stdout for the spawning script |
|
|
14639
|
+
| \`-y\` | consent | skips every permission prompt (claudemesh's policy gate **and** Claude's \`--dangerously-skip-permissions\`). Required for true headless |
|
|
14640
|
+
| \`--\` | separator | everything after is passed verbatim to \`claude\` |
|
|
14641
|
+
| \`--model opus\` | claude flag | example claude-side override |
|
|
14642
|
+
| \`--resume "$LAST_SESSION_ID"\` | claude flag | resume a prior Claude session inside this mesh identity |
|
|
14643
|
+
|
|
14644
|
+
**Rule of thumb:** for any unattended spawn, the minimum is \`--name + --mesh + -y + --quiet\`. Add \`--system-prompt\` to seed task context, \`--message-mode inbox\` to keep the bot quiet, and \`--role\` + \`--groups\` so peers know how to address it. Drop \`--quiet\` when a human is watching the script's stdout.
|
|
14645
|
+
|
|
14646
|
+
#### Trimmed templates
|
|
14647
|
+
|
|
14607
14648
|
\`\`\`bash
|
|
14608
14649
|
# Minimal — single joined mesh, fresh agent, autonomous:
|
|
14609
14650
|
claudemesh launch --name "Lug Nut" -y
|
|
@@ -14624,9 +14665,9 @@ claudemesh launch --name "Mou" --mesh openclaw -y -- --resume abc123-...
|
|
|
14624
14665
|
|
|
14625
14666
|
# Quiet, headless, system-prompt loaded — for cron / hooks:
|
|
14626
14667
|
claudemesh launch --name "ci-bot" --mesh openclaw \\
|
|
14627
|
-
--system-prompt /
|
|
14668
|
+
--system-prompt "$(cat ~/agents/ci-bot.md)" \\
|
|
14628
14669
|
--message-mode inbox \\
|
|
14629
|
-
|
|
14670
|
+
--quiet -y
|
|
14630
14671
|
\`\`\`
|
|
14631
14672
|
|
|
14632
14673
|
If any required flag is missing AND stdin is a TTY, \`launch\` falls back to its prompt for that single field. **In a non-TTY context (Bash tool, cron, AppleScript pipe), missing flags cause the verb to fail-closed — never silently use a default that affects identity.**
|
|
@@ -18211,7 +18252,13 @@ async function main() {
|
|
|
18211
18252
|
name: flags.name,
|
|
18212
18253
|
join: normaliseInviteUrl(command),
|
|
18213
18254
|
yes: !!flags.y || !!flags.yes,
|
|
18214
|
-
resume: flags.resume
|
|
18255
|
+
resume: flags.resume,
|
|
18256
|
+
role: flags.role,
|
|
18257
|
+
groups: flags.groups,
|
|
18258
|
+
"message-mode": flags["message-mode"],
|
|
18259
|
+
"system-prompt": flags["system-prompt"],
|
|
18260
|
+
continue: !!flags.continue,
|
|
18261
|
+
quiet: !!flags.quiet
|
|
18215
18262
|
}, process.argv.slice(2));
|
|
18216
18263
|
return;
|
|
18217
18264
|
}
|
|
@@ -18226,7 +18273,13 @@ async function main() {
|
|
|
18226
18273
|
mesh: flags.mesh,
|
|
18227
18274
|
name: flags.name,
|
|
18228
18275
|
yes: !!flags.y || !!flags.yes,
|
|
18229
|
-
resume: flags.resume
|
|
18276
|
+
resume: flags.resume,
|
|
18277
|
+
role: flags.role,
|
|
18278
|
+
groups: flags.groups,
|
|
18279
|
+
"message-mode": flags["message-mode"],
|
|
18280
|
+
"system-prompt": flags["system-prompt"],
|
|
18281
|
+
continue: !!flags.continue,
|
|
18282
|
+
quiet: !!flags.quiet
|
|
18230
18283
|
}, process.argv.slice(2));
|
|
18231
18284
|
return;
|
|
18232
18285
|
}
|
|
@@ -18255,7 +18308,13 @@ async function main() {
|
|
|
18255
18308
|
name: flags.name,
|
|
18256
18309
|
join: flags.join,
|
|
18257
18310
|
yes: !!flags.y || !!flags.yes,
|
|
18258
|
-
resume: flags.resume
|
|
18311
|
+
resume: flags.resume,
|
|
18312
|
+
role: flags.role,
|
|
18313
|
+
groups: flags.groups,
|
|
18314
|
+
"message-mode": flags["message-mode"],
|
|
18315
|
+
"system-prompt": flags["system-prompt"],
|
|
18316
|
+
continue: !!flags.continue,
|
|
18317
|
+
quiet: !!flags.quiet
|
|
18259
18318
|
}, process.argv.slice(2));
|
|
18260
18319
|
break;
|
|
18261
18320
|
}
|
|
@@ -18296,7 +18355,13 @@ async function main() {
|
|
|
18296
18355
|
name: flags.name,
|
|
18297
18356
|
join: flags.join,
|
|
18298
18357
|
yes: !!flags.y || !!flags.yes,
|
|
18299
|
-
resume: flags.resume
|
|
18358
|
+
resume: flags.resume,
|
|
18359
|
+
role: flags.role,
|
|
18360
|
+
groups: flags.groups,
|
|
18361
|
+
"message-mode": flags["message-mode"],
|
|
18362
|
+
"system-prompt": flags["system-prompt"],
|
|
18363
|
+
continue: !!flags.continue,
|
|
18364
|
+
quiet: !!flags.quiet
|
|
18300
18365
|
}, process.argv.slice(2));
|
|
18301
18366
|
} else if (sub === "list" || sub === "ls") {
|
|
18302
18367
|
const { runList: runList2 } = await Promise.resolve().then(() => (init_list2(), exports_list));
|
|
@@ -19173,4 +19238,4 @@ main().catch((err) => {
|
|
|
19173
19238
|
process.exit(EXIT.INTERNAL_ERROR);
|
|
19174
19239
|
});
|
|
19175
19240
|
|
|
19176
|
-
//# debugId=
|
|
19241
|
+
//# debugId=856EC7628E8E9AE364756E2164756E21
|