nextclaw 0.5.6 → 0.6.1
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/cli/index.js +101 -851
- package/package.json +3 -4
- package/templates/USAGE.md +11 -46
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nextclaw",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "Lightweight personal AI assistant with CLI, multi-provider routing, and channel integrations.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
@@ -38,9 +38,8 @@
|
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"chokidar": "^3.6.0",
|
|
40
40
|
"commander": "^12.1.0",
|
|
41
|
-
"@nextclaw/core": "^0.
|
|
42
|
-
"@nextclaw/server": "^0.
|
|
43
|
-
"@nextclaw/openclaw-compat": "^0.1.4"
|
|
41
|
+
"@nextclaw/core": "^0.6.1",
|
|
42
|
+
"@nextclaw/server": "^0.4.1"
|
|
44
43
|
},
|
|
45
44
|
"devDependencies": {
|
|
46
45
|
"@types/node": "^20.17.6",
|
package/templates/USAGE.md
CHANGED
|
@@ -8,7 +8,7 @@ This guide covers installation, configuration, channels, tools, automation, and
|
|
|
8
8
|
|
|
9
9
|
## AI Self-Management Contract
|
|
10
10
|
|
|
11
|
-
When NextClaw AI needs to operate the product itself (status/doctor/
|
|
11
|
+
When NextClaw AI needs to operate the product itself (status/doctor/channels/config/cron), follow these rules:
|
|
12
12
|
|
|
13
13
|
1. **Read this guide first** (`USAGE.md`) before executing management commands.
|
|
14
14
|
2. **Prefer machine-readable output** (`--json`) whenever available.
|
|
@@ -25,7 +25,6 @@ When NextClaw AI needs to operate the product itself (status/doctor/plugins/chan
|
|
|
25
25
|
- [Configuration](#configuration)
|
|
26
26
|
- [Workspace](#workspace)
|
|
27
27
|
- [Commands](#commands)
|
|
28
|
-
- [Plugins (OpenClaw compatibility)](#plugins-openclaw-compatibility)
|
|
29
28
|
- [Channels](#channels)
|
|
30
29
|
- [Tools](#tools)
|
|
31
30
|
- [Cron & Heartbeat](#cron--heartbeat)
|
|
@@ -137,7 +136,6 @@ When the gateway is already running, config changes from the UI or `nextclaw con
|
|
|
137
136
|
|
|
138
137
|
Restart is still required for:
|
|
139
138
|
|
|
140
|
-
- `plugins.*`
|
|
141
139
|
- UI bind port (`--port` / `--ui-port`)
|
|
142
140
|
|
|
143
141
|
To confirm hot reload succeeded, check gateway console logs or `${NEXTCLAW_HOME:-~/.nextclaw}/logs/service.log` for messages like `Config reload: ... applied.`
|
|
@@ -201,7 +199,6 @@ Created under the workspace:
|
|
|
201
199
|
| `nextclaw channels status` | Show enabled channels and status |
|
|
202
200
|
| `nextclaw doctor` | Run runtime diagnostics (`--json`, `--verbose`, `--fix`) |
|
|
203
201
|
| `nextclaw channels login` | Open QR login for supported channels |
|
|
204
|
-
| `nextclaw channels add --channel <id> [--code/--token/...]` | Run plugin channel setup (OpenClaw-compatible) and write config |
|
|
205
202
|
| `nextclaw cron list` | List scheduled jobs |
|
|
206
203
|
| `nextclaw cron add ...` | Add a cron job (see [Cron](#cron--heartbeat)) |
|
|
207
204
|
| `nextclaw cron remove <jobId>` | Remove a job |
|
|
@@ -209,16 +206,9 @@ Created under the workspace:
|
|
|
209
206
|
| `nextclaw cron run <jobId>` | Run a job once (optionally with `--force` if disabled) |
|
|
210
207
|
| `nextclaw skills install <slug>` | Install a skill from ClawHub |
|
|
211
208
|
| `nextclaw clawhub install <slug>` | Same as `skills install` |
|
|
212
|
-
| `nextclaw plugins list` | List discovered OpenClaw-compatible plugins |
|
|
213
|
-
| `nextclaw plugins info <id>` | Show details of a plugin |
|
|
214
209
|
| `nextclaw config get <path>` | Get config value by path (use `--json` for structured output) |
|
|
215
210
|
| `nextclaw config set <path> <value>` | Set config value by path (use `--json` to parse value as JSON) |
|
|
216
211
|
| `nextclaw config unset <path>` | Remove config value by path |
|
|
217
|
-
| `nextclaw plugins install <path-or-spec>` | Install from local path, archive, or npm package |
|
|
218
|
-
| `nextclaw plugins enable <id>` | Enable a plugin in config |
|
|
219
|
-
| `nextclaw plugins disable <id>` | Disable a plugin in config |
|
|
220
|
-
| `nextclaw plugins uninstall <id>` | Remove plugin config/install record (supports `--dry-run`, `--force`, `--keep-files`) |
|
|
221
|
-
| `nextclaw plugins doctor` | Diagnose plugin load conflicts/errors |
|
|
222
212
|
|
|
223
213
|
Gateway options (when running `nextclaw gateway` or `nextclaw start`):
|
|
224
214
|
|
|
@@ -237,41 +227,6 @@ Status/diagnostics tips:
|
|
|
237
227
|
|
|
238
228
|
---
|
|
239
229
|
|
|
240
|
-
## Plugins (OpenClaw compatibility)
|
|
241
|
-
|
|
242
|
-
NextClaw supports OpenClaw-compatible plugins while keeping compatibility logic isolated in `@nextclaw/openclaw-compat`.
|
|
243
|
-
For architecture boundaries and capability matrix, see [OpenClaw plugin compatibility guide](./openclaw-plugin-compat.md).
|
|
244
|
-
|
|
245
|
-
Typical flow:
|
|
246
|
-
|
|
247
|
-
```bash
|
|
248
|
-
# 1) Inspect discovered plugins
|
|
249
|
-
nextclaw plugins list
|
|
250
|
-
|
|
251
|
-
# 2) Install (path/archive/npm)
|
|
252
|
-
nextclaw plugins install ./my-plugin
|
|
253
|
-
nextclaw plugins install ./my-plugin.tgz
|
|
254
|
-
nextclaw plugins install @scope/openclaw-plugin
|
|
255
|
-
|
|
256
|
-
# 3) Inspect and toggle
|
|
257
|
-
nextclaw plugins info my-plugin
|
|
258
|
-
nextclaw config get plugins.entries.my-plugin.config --json
|
|
259
|
-
nextclaw plugins disable my-plugin
|
|
260
|
-
nextclaw plugins enable my-plugin
|
|
261
|
-
|
|
262
|
-
# 4) Uninstall
|
|
263
|
-
nextclaw plugins uninstall my-plugin --dry-run
|
|
264
|
-
nextclaw plugins uninstall my-plugin --force
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
Notes:
|
|
268
|
-
|
|
269
|
-
- Plugin config is merged under `plugins.entries.<id>.config`.
|
|
270
|
-
- `plugins uninstall --keep-config` is accepted as a backward-compatible alias of `--keep-files`.
|
|
271
|
-
- If a plugin tool/channel/provider conflicts with a built-in capability, NextClaw rejects the conflicting registration and reports diagnostics.
|
|
272
|
-
|
|
273
|
-
---
|
|
274
|
-
|
|
275
230
|
## Self-update
|
|
276
231
|
|
|
277
232
|
Use the built-in updater:
|
|
@@ -312,12 +267,15 @@ Configure channels in the UI at http://127.0.0.1:18791 or in `~/.nextclaw/config
|
|
|
312
267
|
"discord": {
|
|
313
268
|
"enabled": true,
|
|
314
269
|
"token": "YOUR_BOT_TOKEN",
|
|
270
|
+
"allowBots": false,
|
|
315
271
|
"allowFrom": []
|
|
316
272
|
}
|
|
317
273
|
}
|
|
318
274
|
}
|
|
319
275
|
```
|
|
320
276
|
|
|
277
|
+
- `allowBots` (default `false`): whether to accept bot-authored messages. Keep it `false` unless you explicitly need bot-to-bot flows.
|
|
278
|
+
|
|
321
279
|
### Telegram
|
|
322
280
|
|
|
323
281
|
1. Create a bot via [@BotFather](https://t.me/BotFather) and get the token.
|
|
@@ -338,6 +296,11 @@ Configure channels in the UI at http://127.0.0.1:18791 or in `~/.nextclaw/config
|
|
|
338
296
|
|
|
339
297
|
Optional: set `"proxy": "http://localhost:7890"` (or your proxy URL) for network access.
|
|
340
298
|
|
|
299
|
+
Telegram Bot API behavior note:
|
|
300
|
+
|
|
301
|
+
- In **groups**, bots generally do **not** receive messages from other bots.
|
|
302
|
+
- For bot-to-bot scenarios, prefer **Telegram channels**. NextClaw now processes `channel_post` updates as inbound messages.
|
|
303
|
+
|
|
341
304
|
### Slack
|
|
342
305
|
|
|
343
306
|
Socket mode is the typical setup. You need a **Bot Token** and an **App-Level Token** (with `connections:write`).
|
|
@@ -350,6 +313,7 @@ Socket mode is the typical setup. You need a **Bot Token** and an **App-Level To
|
|
|
350
313
|
"mode": "socket",
|
|
351
314
|
"botToken": "xoxb-...",
|
|
352
315
|
"appToken": "xapp-...",
|
|
316
|
+
"allowBots": false,
|
|
353
317
|
"dm": { "enabled": true, "allowFrom": [] }
|
|
354
318
|
}
|
|
355
319
|
}
|
|
@@ -358,6 +322,7 @@ Socket mode is the typical setup. You need a **Bot Token** and an **App-Level To
|
|
|
358
322
|
|
|
359
323
|
- `dm.enabled`: allow DMs to the bot.
|
|
360
324
|
- `dm.allowFrom`: restrict DMs to these user IDs; empty means allow all.
|
|
325
|
+
- `allowBots` (default `false`): whether bot-authored Slack messages can trigger replies.
|
|
361
326
|
|
|
362
327
|
### Feishu (Lark)
|
|
363
328
|
|