nextclaw 0.19.7 → 0.19.12

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.
@@ -3646,7 +3646,7 @@ registerHostServiceControls({
3646
3646
  nextclaw: runtime
3647
3647
  });
3648
3648
  program.command("agent").description("Interact with the agent directly").option("-m, --message <message>", "Message to send to the agent").option("-s, --session <session>", "Session ID", "cli:default").option("--model <model>", "Session model override for this run").option("--no-markdown", "Disable Markdown rendering").action(async (opts) => runtime.agent(opts));
3649
- program.command("update").description(`Check, download, or apply ${APP_NAME} runtime updates`).option("--check", "Only check for a runtime update", false).option("--download", "Download an available runtime update without applying it").option("--apply", "Apply the downloaded runtime update", false).option("--channel <channel>", "Update channel (stable or beta)").option("--manifest-url <url>", "Explicit runtime update manifest URL").option("--json", "Output JSON", false).action(async (opts) => runtime.update(opts));
3649
+ program.command("update").description(`Update the ${APP_NAME} runtime`).option("--check", "Only check for a runtime update", false).option("--download-only", "Download an available runtime update without applying it", false).option("--download", "Alias for --download-only").option("--apply", "Apply the downloaded runtime update", false).option("--channel <channel>", "Update channel (stable or beta)").option("--manifest-url <url>", "Explicit runtime update manifest URL").option("--json", "Output JSON", false).action(async (opts) => runtime.update(opts));
3650
3650
  registerSkillsCommands(program, runtime);
3651
3651
  registerAgentsCommands(program, runtime);
3652
3652
  const plugins = program.command("plugins").description("Manage OpenClaw-compatible plugins");
@@ -3676,6 +3676,7 @@ secrets.command("apply").description("Apply secret refs/providers/defaults patch
3676
3676
  secrets.command("reload").description("Trigger runtime secrets reload signal").option("--json", "Output JSON", false).action((opts) => runtime.commands.secrets.reload(opts));
3677
3677
  const channels = program.command("channels").description("Manage channels");
3678
3678
  channels.command("add").description("Configure a plugin channel (OpenClaw-compatible setup)").requiredOption("--channel <id>", "Plugin channel id").option("--code <code>", "Pairing code").option("--token <token>", "Connector token").option("--name <name>", "Display name").option("--url <url>", "API base URL").option("--http-url <url>", "Alias for --url").action((opts) => runtime.commands.channels.add(opts));
3679
+ channels.command("list").description("List configured plugin channels").option("--json", "Output JSON", false).action((opts) => runtime.commands.channels.list(opts));
3679
3680
  channels.command("status").description("Show channel status").action(() => runtime.commands.channels.status());
3680
3681
  channels.command("login").description("Link device via QR code").option("--channel <id>", "Plugin channel id").option("--account <id>", "Channel account id").option("--url <url>", "Channel API base URL").option("--http-url <url>", "Alias for --url").option("-v, --verbose", "Verbose output", false).action(async (opts) => runtime.commands.channels.login(opts));
3681
3682
  const cron = program.command("cron").description("Manage scheduled tasks");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nextclaw",
3
- "version": "0.19.7",
3
+ "version": "0.19.12",
4
4
  "description": "Lightweight personal AI assistant with CLI, multi-provider routing, and channel integrations.",
5
5
  "private": false,
6
6
  "type": "module",
@@ -41,21 +41,21 @@
41
41
  "commander": "^12.1.0",
42
42
  "jszip": "^3.10.1",
43
43
  "yaml": "^2.8.1",
44
- "@nextclaw/core": "0.12.17",
45
44
  "@nextclaw/kernel": "0.1.6",
46
45
  "@nextclaw/mcp": "0.1.82",
46
+ "@nextclaw/ncp-agent-runtime": "0.3.20",
47
47
  "@nextclaw/ncp-mcp": "0.1.84",
48
+ "@nextclaw/core": "0.12.17",
48
49
  "@nextclaw/ncp": "0.5.10",
49
- "@nextclaw/ncp-agent-runtime": "0.3.20",
50
- "@nextclaw/ncp-toolkit": "0.5.15",
51
50
  "@nextclaw/nextclaw-hermes-acp-bridge": "0.1.9",
52
- "@nextclaw/nextclaw-ncp-runtime-http-client": "0.1.9",
53
- "@nextclaw/nextclaw-ncp-runtime-stdio-client": "0.1.10",
54
51
  "@nextclaw/openclaw-compat": "1.0.17",
52
+ "@nextclaw/nextclaw-ncp-runtime-http-client": "0.1.9",
53
+ "@nextclaw/ncp-toolkit": "0.5.15",
55
54
  "@nextclaw/remote": "0.1.94",
55
+ "@nextclaw/nextclaw-ncp-runtime-stdio-client": "0.1.10",
56
56
  "@nextclaw/runtime": "0.2.49",
57
- "@nextclaw/server": "0.12.17",
58
- "@nextclaw/service": "0.1.8"
57
+ "@nextclaw/service": "0.1.9",
58
+ "@nextclaw/server": "0.12.17"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@types/node": "^20.17.6",
@@ -505,6 +505,7 @@ Skill loading contract:
505
505
  | `nextclaw plugins enable <id>` | Enable plugin in config |
506
506
  | `nextclaw plugins disable <id>` | Disable plugin in config |
507
507
  | `nextclaw plugins doctor` | Diagnose plugin loading issues |
508
+ | `nextclaw channels list --json` | List plugin channels for automation and agent channel discovery |
508
509
  | `nextclaw channels status` | Show enabled channels and status |
509
510
  | `nextclaw doctor` | Run runtime diagnostics (`--json`, `--verbose`, `--fix`) |
510
511
  | `nextclaw channels login` | Open QR login for supported channels |
@@ -689,9 +690,10 @@ nextclaw update
689
690
  Behavior:
690
691
 
691
692
  - If `NEXTCLAW_UPDATE_COMMAND` is set, the CLI executes it (useful for custom update flows).
692
- - Otherwise it falls back to `npm i -g nextclaw`.
693
- - `nextclaw update` now prints version progress explicitly: `Current version: x.y.z`, then either `Version updated: x.y.z -> a.b.c` or `Version unchanged: x.y.z`.
694
- - If the background service is running, restart it after the update to apply changes.
693
+ - Otherwise `nextclaw update` checks the runtime update channel, downloads the latest compatible runtime bundle, and applies it.
694
+ - Use `nextclaw update --check` to check without downloading or applying.
695
+ - Use `nextclaw update --download-only` to stage an update without switching the active runtime. `nextclaw update --apply` applies an already staged runtime update.
696
+ - If the background service is running, restart it after `nextclaw update` reports that the runtime update was applied.
695
697
  - When update is triggered from the running gateway (agent `update.run`), NextClaw arms a self-relaunch helper before exiting, so the service comes back automatically (like an OS reboot flow).
696
698
  - After restart, NextClaw automatically pings the last active session with restart/update status (including note when provided).
697
699
 
@@ -708,6 +710,8 @@ All message channels use a common **allowFrom** rule:
708
710
 
709
711
  Configure channels in the UI at http://127.0.0.1:55667 or in `~/.nextclaw/config.json` under `channels`.
710
712
 
713
+ Use `nextclaw channels list --json` when an automation or AI agent needs the exact runtime channel ids and outbound capabilities before calling messaging tools. Treat returned `channels[].id` values as authoritative; do not guess aliases such as `wechat` for the Weixin channel.
714
+
711
715
  ### Discord
712
716
 
713
717
  1. Create a bot in the [Discord Developer Portal](https://discord.com/developers/applications) and get the bot token.