docs: fix CLI command tree, SDK import path, and tool group listing

- Remove non-existent 'secrets migrate' from CLI command tree
- Add actual secrets subcommands: audit, configure, apply
- Add missing plugin subcommands: inspect, uninstall, update, marketplace list
- Fix plugins info -> inspect (actual command name)
- Add message send and broadcast subcommands to command tree
- Remove misleading deprecated import from sdk-overview
- Add sessions_yield and subagents to group:sessions tool group docs
- Fix formatting
This commit is contained in:
Vincent Koc
2026-03-23 10:38:31 -07:00
parent 921a147196
commit 3fe2f0a550
4 changed files with 28 additions and 32 deletions

View File

@@ -113,7 +113,9 @@ openclaw [--dev] [--profile <name>] <command>
audit
secrets
reload
migrate
audit
configure
apply
reset
uninstall
update
@@ -132,16 +134,21 @@ openclaw [--dev] [--profile <name>] <command>
check
plugins
list
info
inspect
install
uninstall
update
enable
disable
doctor
marketplace list
memory
status
index
search
message
send
broadcast
agent
agents
list

View File

@@ -27,9 +27,6 @@ Always import from a specific subpath:
```typescript
import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
import { defineChannelPluginEntry } from "openclaw/plugin-sdk/core";
// Deprecated — will be removed in the next major release
import { definePluginEntry } from "openclaw/plugin-sdk";
```
Each subpath is a small, self-contained module. This keeps startup fast and

View File

@@ -109,18 +109,18 @@ Per-agent override: `agents.list[].tools.profile`.
Use `group:*` shorthands in allow/deny lists:
| Group | Tools |
| ------------------ | ------------------------------------------------------------------------------ |
| `group:runtime` | exec, bash, process |
| `group:fs` | read, write, edit, apply_patch |
| `group:sessions` | sessions_list, sessions_history, sessions_send, sessions_spawn, session_status |
| `group:memory` | memory_search, memory_get |
| `group:web` | web_search, web_fetch |
| `group:ui` | browser, canvas |
| `group:automation` | cron, gateway |
| `group:messaging` | message |
| `group:nodes` | nodes |
| `group:openclaw` | All built-in OpenClaw tools (excludes plugin tools) |
| Group | Tools |
| ------------------ | --------------------------------------------------------------------------------------------------------- |
| `group:runtime` | exec, bash, process |
| `group:fs` | read, write, edit, apply_patch |
| `group:sessions` | sessions_list, sessions_history, sessions_send, sessions_spawn, sessions_yield, subagents, session_status |
| `group:memory` | memory_search, memory_get |
| `group:web` | web_search, web_fetch |
| `group:ui` | browser, canvas |
| `group:automation` | cron, gateway |
| `group:messaging` | message |
| `group:nodes` | nodes |
| `group:openclaw` | All built-in OpenClaw tools (excludes plugin tools) |
### Provider-specific restrictions

View File

@@ -116,25 +116,17 @@ describe("browser server-context ensureBrowserAvailable", () => {
setupEnsureBrowserAvailableHarness();
const isChromeReachable = vi.mocked(chromeModule.isChromeReachable);
isChromeReachable
.mockResolvedValueOnce(false)
.mockResolvedValueOnce(true);
isChromeReachable.mockResolvedValueOnce(false).mockResolvedValueOnce(true);
isChromeCdpReady.mockResolvedValueOnce(true);
await expect(profile.ensureBrowserAvailable()).resolves.toBeUndefined();
expect(isChromeReachable).toHaveBeenNthCalledWith(
1,
"http://127.0.0.1:18800",
undefined,
{ allowPrivateNetwork: true },
);
expect(isChromeReachable).toHaveBeenNthCalledWith(
2,
"http://127.0.0.1:18800",
1000,
{ allowPrivateNetwork: true },
);
expect(isChromeReachable).toHaveBeenNthCalledWith(1, "http://127.0.0.1:18800", undefined, {
allowPrivateNetwork: true,
});
expect(isChromeReachable).toHaveBeenNthCalledWith(2, "http://127.0.0.1:18800", 1000, {
allowPrivateNetwork: true,
});
expect(launchOpenClawChrome).not.toHaveBeenCalled();
expect(stopOpenClawChrome).not.toHaveBeenCalled();
});