clawconnect-agent 0.1.0

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.
Files changed (103) hide show
  1. package/.env.example +41 -0
  2. package/README.md +259 -0
  3. package/README.zh-CN.md +329 -0
  4. package/dist/commands/backup-manager.d.ts +21 -0
  5. package/dist/commands/backup-manager.js +346 -0
  6. package/dist/commands/backup-manager.js.map +1 -0
  7. package/dist/commands/install.d.ts +6 -0
  8. package/dist/commands/install.js +107 -0
  9. package/dist/commands/install.js.map +1 -0
  10. package/dist/commands/local-handlers.d.ts +2 -0
  11. package/dist/commands/local-handlers.js +375 -0
  12. package/dist/commands/local-handlers.js.map +1 -0
  13. package/dist/commands/local-runtime.d.ts +36 -0
  14. package/dist/commands/local-runtime.js +445 -0
  15. package/dist/commands/local-runtime.js.map +1 -0
  16. package/dist/commands/pair.d.ts +7 -0
  17. package/dist/commands/pair.js +100 -0
  18. package/dist/commands/pair.js.map +1 -0
  19. package/dist/commands/provider-config.d.ts +35 -0
  20. package/dist/commands/provider-config.js +291 -0
  21. package/dist/commands/provider-config.js.map +1 -0
  22. package/dist/commands/provider-handlers.d.ts +2 -0
  23. package/dist/commands/provider-handlers.js +216 -0
  24. package/dist/commands/provider-handlers.js.map +1 -0
  25. package/dist/commands/provider-registry.d.ts +19 -0
  26. package/dist/commands/provider-registry.js +120 -0
  27. package/dist/commands/provider-registry.js.map +1 -0
  28. package/dist/commands/run.d.ts +1 -0
  29. package/dist/commands/run.js +35 -0
  30. package/dist/commands/run.js.map +1 -0
  31. package/dist/commands/send-file-utils.d.ts +6 -0
  32. package/dist/commands/send-file-utils.js +94 -0
  33. package/dist/commands/send-file-utils.js.map +1 -0
  34. package/dist/commands/send-file.d.ts +41 -0
  35. package/dist/commands/send-file.js +492 -0
  36. package/dist/commands/send-file.js.map +1 -0
  37. package/dist/commands/set-token.d.ts +1 -0
  38. package/dist/commands/set-token.js +43 -0
  39. package/dist/commands/set-token.js.map +1 -0
  40. package/dist/commands/status.d.ts +1 -0
  41. package/dist/commands/status.js +135 -0
  42. package/dist/commands/status.js.map +1 -0
  43. package/dist/commands/voice-reply.d.ts +39 -0
  44. package/dist/commands/voice-reply.js +329 -0
  45. package/dist/commands/voice-reply.js.map +1 -0
  46. package/dist/config/config.d.ts +32 -0
  47. package/dist/config/config.js +103 -0
  48. package/dist/config/config.js.map +1 -0
  49. package/dist/config/env.d.ts +16 -0
  50. package/dist/config/env.js +138 -0
  51. package/dist/config/env.js.map +1 -0
  52. package/dist/i18n/index.d.ts +1 -0
  53. package/dist/i18n/index.js +147 -0
  54. package/dist/i18n/index.js.map +1 -0
  55. package/dist/index.d.ts +2 -0
  56. package/dist/index.js +117 -0
  57. package/dist/index.js.map +1 -0
  58. package/dist/platform/service-manager-common.d.ts +26 -0
  59. package/dist/platform/service-manager-common.js +51 -0
  60. package/dist/platform/service-manager-common.js.map +1 -0
  61. package/dist/platform/service-manager-linux.d.ts +6 -0
  62. package/dist/platform/service-manager-linux.js +229 -0
  63. package/dist/platform/service-manager-linux.js.map +1 -0
  64. package/dist/platform/service-manager.d.ts +16 -0
  65. package/dist/platform/service-manager.js +165 -0
  66. package/dist/platform/service-manager.js.map +1 -0
  67. package/dist/relay/attachment-staging.d.ts +12 -0
  68. package/dist/relay/attachment-staging.js +116 -0
  69. package/dist/relay/attachment-staging.js.map +1 -0
  70. package/dist/relay/chat-history.d.ts +29 -0
  71. package/dist/relay/chat-history.js +69 -0
  72. package/dist/relay/chat-history.js.map +1 -0
  73. package/dist/relay/chat-payload.d.ts +6 -0
  74. package/dist/relay/chat-payload.js +170 -0
  75. package/dist/relay/chat-payload.js.map +1 -0
  76. package/dist/relay/chat-send-attachments.d.ts +4 -0
  77. package/dist/relay/chat-send-attachments.js +47 -0
  78. package/dist/relay/chat-send-attachments.js.map +1 -0
  79. package/dist/relay/gateway-client.d.ts +41 -0
  80. package/dist/relay/gateway-client.js +288 -0
  81. package/dist/relay/gateway-client.js.map +1 -0
  82. package/dist/relay/office-payload.d.ts +19 -0
  83. package/dist/relay/office-payload.js +205 -0
  84. package/dist/relay/office-payload.js.map +1 -0
  85. package/dist/relay/reconnect.d.ts +14 -0
  86. package/dist/relay/reconnect.js +27 -0
  87. package/dist/relay/reconnect.js.map +1 -0
  88. package/dist/relay/relay-manager.d.ts +36 -0
  89. package/dist/relay/relay-manager.js +619 -0
  90. package/dist/relay/relay-manager.js.map +1 -0
  91. package/dist/relay/session-context.d.ts +19 -0
  92. package/dist/relay/session-context.js +323 -0
  93. package/dist/relay/session-context.js.map +1 -0
  94. package/dist/relay/slash-command-catalog.d.ts +8 -0
  95. package/dist/relay/slash-command-catalog.generated.d.ts +226 -0
  96. package/dist/relay/slash-command-catalog.generated.js +275 -0
  97. package/dist/relay/slash-command-catalog.generated.js.map +1 -0
  98. package/dist/relay/slash-command-catalog.js +3 -0
  99. package/dist/relay/slash-command-catalog.js.map +1 -0
  100. package/dist/relay/voice-reply-preference.d.ts +25 -0
  101. package/dist/relay/voice-reply-preference.js +103 -0
  102. package/dist/relay/voice-reply-preference.js.map +1 -0
  103. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relay-manager.js","sourceRoot":"","sources":["../../src/relay/relay-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export type GatewaySessionDefaults = {
2
+ mainSessionKey: string;
3
+ mainKey: string;
4
+ defaultAgentId?: string;
5
+ };
6
+ export type ContextUsageSnapshot = {
7
+ sessionKey: string;
8
+ currentModel?: string;
9
+ contextUsage?: number;
10
+ contextLimit?: number;
11
+ promptTokens?: number;
12
+ totalTokens?: number;
13
+ };
14
+ export declare function buildContextUsageFingerprint(snapshot: ContextUsageSnapshot): string;
15
+ export declare const DEFAULT_GATEWAY_SESSION_DEFAULTS: GatewaySessionDefaults;
16
+ export declare function readContextUsageSnapshot(sessionKey: string, defaults: GatewaySessionDefaults): Promise<ContextUsageSnapshot | null>;
17
+ export declare function extractGatewaySessionDefaults(rawPayload: unknown): GatewaySessionDefaults | null;
18
+ export declare function canonicalizeSessionKey(rawValue: unknown, defaults: GatewaySessionDefaults): string | unknown;
19
+ export declare function canonicalizeRelayParams(method: string, rawParams: unknown, defaults: GatewaySessionDefaults): unknown;
@@ -0,0 +1,323 @@
1
+ import { homedir } from "os";
2
+ import { isAbsolute, join, resolve } from "path";
3
+ import { open as openFile, readFile } from "fs/promises";
4
+ const OPENCLAW_HOME = join(homedir(), ".openclaw");
5
+ const TRANSCRIPT_TAIL_CHUNK_BYTES = 64 * 1024;
6
+ export function buildContextUsageFingerprint(snapshot) {
7
+ return JSON.stringify({
8
+ currentModel: snapshot.currentModel ?? null,
9
+ contextUsage: snapshot.promptTokens ?? snapshot.contextUsage ?? null,
10
+ contextLimit: snapshot.contextLimit ?? null,
11
+ });
12
+ }
13
+ export const DEFAULT_GATEWAY_SESSION_DEFAULTS = {
14
+ mainSessionKey: "main",
15
+ mainKey: "main",
16
+ };
17
+ export async function readContextUsageSnapshot(sessionKey, defaults) {
18
+ const entry = await readSessionStoreEntry(sessionKey, defaults);
19
+ if (!entry) {
20
+ return null;
21
+ }
22
+ const contextLimit = toPositiveInteger(entry.contextTokens);
23
+ let currentModel = typeof entry.model === "string" && entry.model.trim().length > 0 ? entry.model.trim() : undefined;
24
+ let contextUsage = deriveStoredContextUsage(entry);
25
+ let promptTokens;
26
+ let totalTokens;
27
+ if (typeof entry.sessionId === "string" && entry.sessionId.trim().length > 0) {
28
+ const transcriptUsage = await readUsageFromSessionLog(sessionKey, entry.sessionId.trim(), entry, defaults);
29
+ if (transcriptUsage) {
30
+ promptTokens = transcriptUsage.promptTokens;
31
+ totalTokens = transcriptUsage.total;
32
+ contextUsage = transcriptUsage.promptTokens;
33
+ if (!currentModel && transcriptUsage.model) {
34
+ currentModel = transcriptUsage.model;
35
+ }
36
+ }
37
+ }
38
+ if (!currentModel && !contextLimit && contextUsage === undefined) {
39
+ return null;
40
+ }
41
+ return {
42
+ sessionKey,
43
+ currentModel,
44
+ contextUsage,
45
+ contextLimit,
46
+ promptTokens,
47
+ totalTokens,
48
+ };
49
+ }
50
+ export function extractGatewaySessionDefaults(rawPayload) {
51
+ if (!rawPayload || typeof rawPayload !== "object" || Array.isArray(rawPayload)) {
52
+ return null;
53
+ }
54
+ const payload = rawPayload;
55
+ const snapshot = payload.snapshot && typeof payload.snapshot === "object" && !Array.isArray(payload.snapshot)
56
+ ? payload.snapshot
57
+ : undefined;
58
+ const sessionDefaultsRaw = snapshot?.sessionDefaults && typeof snapshot.sessionDefaults === "object" && !Array.isArray(snapshot.sessionDefaults)
59
+ ? snapshot.sessionDefaults
60
+ : snapshot?.sessiondefaults && typeof snapshot.sessiondefaults === "object" && !Array.isArray(snapshot.sessiondefaults)
61
+ ? snapshot.sessiondefaults
62
+ : undefined;
63
+ const mainSessionKey = typeof sessionDefaultsRaw?.mainSessionKey === "string"
64
+ ? sessionDefaultsRaw.mainSessionKey.trim()
65
+ : "";
66
+ const mainKey = typeof sessionDefaultsRaw?.mainKey === "string" ? sessionDefaultsRaw.mainKey.trim() : "";
67
+ const defaultAgentId = typeof sessionDefaultsRaw?.defaultAgentId === "string"
68
+ ? sessionDefaultsRaw.defaultAgentId.trim()
69
+ : "";
70
+ if (mainSessionKey) {
71
+ return {
72
+ mainSessionKey,
73
+ mainKey: mainKey || "main",
74
+ defaultAgentId: defaultAgentId || undefined,
75
+ };
76
+ }
77
+ const config = payload.config && typeof payload.config === "object" && !Array.isArray(payload.config)
78
+ ? payload.config
79
+ : undefined;
80
+ const session = config?.session && typeof config.session === "object" && !Array.isArray(config.session)
81
+ ? config.session
82
+ : undefined;
83
+ const scope = typeof session?.scope === "string" ? session.scope.trim() : "";
84
+ if (scope === "global") {
85
+ return {
86
+ mainSessionKey: "global",
87
+ mainKey: "global",
88
+ };
89
+ }
90
+ return null;
91
+ }
92
+ export function canonicalizeSessionKey(rawValue, defaults) {
93
+ if (typeof rawValue !== "string") {
94
+ return rawValue;
95
+ }
96
+ const trimmed = rawValue.trim();
97
+ if (!trimmed) {
98
+ return trimmed;
99
+ }
100
+ const mainKey = defaults.mainKey || "main";
101
+ const isMainAlias = trimmed === "main" ||
102
+ trimmed === mainKey ||
103
+ trimmed === defaults.mainSessionKey ||
104
+ (defaults.defaultAgentId
105
+ ? trimmed === `agent:${defaults.defaultAgentId}:main` || trimmed === `agent:${defaults.defaultAgentId}:${mainKey}`
106
+ : false);
107
+ return isMainAlias ? defaults.mainSessionKey : trimmed;
108
+ }
109
+ export function canonicalizeRelayParams(method, rawParams, defaults) {
110
+ if (!shouldCanonicalizeSessionKey(method)) {
111
+ return rawParams;
112
+ }
113
+ if (!rawParams || typeof rawParams !== "object" || Array.isArray(rawParams)) {
114
+ return rawParams;
115
+ }
116
+ const params = rawParams;
117
+ if (!("sessionKey" in params)) {
118
+ return rawParams;
119
+ }
120
+ return {
121
+ ...params,
122
+ sessionKey: canonicalizeSessionKey(params.sessionKey, defaults),
123
+ };
124
+ }
125
+ function toFiniteInteger(value) {
126
+ return typeof value === "number" && Number.isFinite(value) ? Math.round(value) : undefined;
127
+ }
128
+ function toNonNegativeInteger(value) {
129
+ const normalized = toFiniteInteger(value);
130
+ return typeof normalized === "number" && normalized >= 0 ? normalized : undefined;
131
+ }
132
+ function toPositiveInteger(value) {
133
+ const normalized = toNonNegativeInteger(value);
134
+ return typeof normalized === "number" && normalized > 0 ? normalized : undefined;
135
+ }
136
+ function resolveAgentIdFromSessionKey(sessionKey, defaults) {
137
+ const match = sessionKey.match(/^agent:([^:]+):/);
138
+ if (match?.[1]) {
139
+ return match[1];
140
+ }
141
+ return defaults.defaultAgentId || "main";
142
+ }
143
+ function resolveSessionsDir(sessionKey, defaults) {
144
+ return join(OPENCLAW_HOME, "agents", resolveAgentIdFromSessionKey(sessionKey, defaults), "sessions");
145
+ }
146
+ async function readSessionStoreEntry(sessionKey, defaults) {
147
+ const storePath = join(resolveSessionsDir(sessionKey, defaults), "sessions.json");
148
+ try {
149
+ const raw = await readFile(storePath, "utf8");
150
+ const parsed = JSON.parse(raw);
151
+ const directEntry = parsed?.[sessionKey];
152
+ if (directEntry && typeof directEntry === "object") {
153
+ return directEntry;
154
+ }
155
+ const mainAliases = new Set([sessionKey, defaults.mainSessionKey, defaults.mainKey, "main"]);
156
+ const defaultAgentMainKey = defaults.defaultAgentId ? `agent:${defaults.defaultAgentId}:main` : undefined;
157
+ if (defaultAgentMainKey) {
158
+ const defaultEntry = parsed?.[defaultAgentMainKey];
159
+ if (defaultEntry && typeof defaultEntry === "object" && mainAliases.has(sessionKey)) {
160
+ return defaultEntry;
161
+ }
162
+ }
163
+ if (mainAliases.has(sessionKey)) {
164
+ const mainEntry = Object.entries(parsed).find(([key]) => key.endsWith(":main"))?.[1];
165
+ if (mainEntry && typeof mainEntry === "object") {
166
+ return mainEntry;
167
+ }
168
+ const firstEntry = Object.values(parsed).find((value) => value && typeof value === "object");
169
+ return firstEntry ?? null;
170
+ }
171
+ return null;
172
+ }
173
+ catch {
174
+ return null;
175
+ }
176
+ }
177
+ function normalizeUsageRecord(rawUsage) {
178
+ if (!rawUsage || typeof rawUsage !== "object" || Array.isArray(rawUsage)) {
179
+ return undefined;
180
+ }
181
+ const usage = rawUsage;
182
+ const hasKnownField = Object.prototype.hasOwnProperty.call(usage, "input") ||
183
+ Object.prototype.hasOwnProperty.call(usage, "output") ||
184
+ Object.prototype.hasOwnProperty.call(usage, "cacheRead") ||
185
+ Object.prototype.hasOwnProperty.call(usage, "cacheWrite") ||
186
+ Object.prototype.hasOwnProperty.call(usage, "total") ||
187
+ Object.prototype.hasOwnProperty.call(usage, "totalTokens") ||
188
+ Object.prototype.hasOwnProperty.call(usage, "total_tokens") ||
189
+ Object.prototype.hasOwnProperty.call(usage, "promptTokens") ||
190
+ Object.prototype.hasOwnProperty.call(usage, "prompt_tokens");
191
+ if (!hasKnownField) {
192
+ return undefined;
193
+ }
194
+ const input = toNonNegativeInteger(usage.input) ?? 0;
195
+ const output = toNonNegativeInteger(usage.output) ?? 0;
196
+ const cacheRead = toNonNegativeInteger(usage.cacheRead) ?? 0;
197
+ const cacheWrite = toNonNegativeInteger(usage.cacheWrite) ?? 0;
198
+ const total = toNonNegativeInteger(usage.total) ??
199
+ toNonNegativeInteger(usage.totalTokens) ??
200
+ toNonNegativeInteger(usage.total_tokens);
201
+ const promptTokens = toNonNegativeInteger(usage.promptTokens) ??
202
+ toNonNegativeInteger(usage.prompt_tokens);
203
+ return {
204
+ input: Math.max(0, input),
205
+ output: Math.max(0, output),
206
+ cacheRead: Math.max(0, cacheRead),
207
+ cacheWrite: Math.max(0, cacheWrite),
208
+ total,
209
+ promptTokens,
210
+ };
211
+ }
212
+ function derivePromptTokens(usage) {
213
+ if (usage.promptTokens !== undefined) {
214
+ return usage.promptTokens;
215
+ }
216
+ return usage.input + usage.cacheRead + usage.cacheWrite;
217
+ }
218
+ function resolveSessionLogPath(sessionKey, sessionId, entry, defaults) {
219
+ const sessionsDir = resolveSessionsDir(sessionKey, defaults);
220
+ const candidate = typeof entry?.sessionFile === "string" && entry.sessionFile.trim().length > 0
221
+ ? entry.sessionFile.trim()
222
+ : typeof entry?.transcriptPath === "string" && entry.transcriptPath.trim().length > 0
223
+ ? entry.transcriptPath.trim()
224
+ : "";
225
+ if (!candidate) {
226
+ return join(sessionsDir, `${sessionId}.jsonl`);
227
+ }
228
+ return isAbsolute(candidate) ? candidate : resolve(sessionsDir, candidate);
229
+ }
230
+ async function readFileTail(filePath, maxBytes = TRANSCRIPT_TAIL_CHUNK_BYTES) {
231
+ const handle = await openFile(filePath, "r");
232
+ try {
233
+ const stats = await handle.stat();
234
+ const size = Math.max(0, Math.floor(stats.size));
235
+ if (size === 0) {
236
+ return null;
237
+ }
238
+ const length = Math.min(size, maxBytes);
239
+ const buffer = Buffer.alloc(length);
240
+ const offset = Math.max(0, size - length);
241
+ await handle.read(buffer, 0, length, offset);
242
+ return buffer.toString("utf8");
243
+ }
244
+ finally {
245
+ await handle.close();
246
+ }
247
+ }
248
+ async function readUsageFromSessionLog(sessionKey, sessionId, entry, defaults) {
249
+ const logPath = resolveSessionLogPath(sessionKey, sessionId, entry, defaults);
250
+ try {
251
+ const tail = await readFileTail(logPath);
252
+ if (!tail) {
253
+ return null;
254
+ }
255
+ const offset = tail.indexOf("\n");
256
+ const lines = (offset > 0 ? tail.slice(offset + 1) : tail).split(/\n+/);
257
+ let lastUsage;
258
+ let model;
259
+ for (const line of lines) {
260
+ const trimmed = line.trim();
261
+ if (!trimmed) {
262
+ continue;
263
+ }
264
+ try {
265
+ const parsed = JSON.parse(trimmed);
266
+ const message = parsed.message && typeof parsed.message === "object" && !Array.isArray(parsed.message)
267
+ ? parsed.message
268
+ : undefined;
269
+ const usage = normalizeUsageRecord(message?.usage ?? parsed.usage);
270
+ if (usage) {
271
+ lastUsage = usage;
272
+ }
273
+ if (typeof message?.model === "string" && message.model.trim().length > 0) {
274
+ model = message.model.trim();
275
+ }
276
+ else if (typeof parsed.model === "string" && parsed.model.trim().length > 0) {
277
+ model = parsed.model.trim();
278
+ }
279
+ }
280
+ catch {
281
+ // Ignore malformed transcript lines.
282
+ }
283
+ }
284
+ if (!lastUsage) {
285
+ return null;
286
+ }
287
+ const promptTokens = derivePromptTokens(lastUsage) ?? lastUsage.total ?? lastUsage.input + lastUsage.output;
288
+ const total = lastUsage.total ?? promptTokens + lastUsage.output;
289
+ return {
290
+ promptTokens,
291
+ total,
292
+ model,
293
+ };
294
+ }
295
+ catch {
296
+ return null;
297
+ }
298
+ }
299
+ function deriveStoredContextUsage(entry) {
300
+ if (!entry) {
301
+ return undefined;
302
+ }
303
+ const total = toNonNegativeInteger(entry.totalTokens);
304
+ if (typeof total === "number") {
305
+ return total;
306
+ }
307
+ const input = toFiniteInteger(entry.inputTokens) ?? 0;
308
+ const output = toFiniteInteger(entry.outputTokens) ?? 0;
309
+ const fallback = input + output;
310
+ if (fallback > 0) {
311
+ return fallback;
312
+ }
313
+ if (Object.prototype.hasOwnProperty.call(entry, "inputTokens") ||
314
+ Object.prototype.hasOwnProperty.call(entry, "outputTokens") ||
315
+ Object.prototype.hasOwnProperty.call(entry, "totalTokens")) {
316
+ return 0;
317
+ }
318
+ return undefined;
319
+ }
320
+ function shouldCanonicalizeSessionKey(method) {
321
+ return method === "chat.send" || method === "chat.history" || method === "chat.abort" || method === "agent";
322
+ }
323
+ //# sourceMappingURL=session-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-context.js","sourceRoot":"","sources":["../../src/relay/session-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export type RelaySlashCommandSource = "OpenClaw" | "ClawConnect";
2
+ export interface RelaySlashCommandDescriptor {
3
+ source: RelaySlashCommandSource;
4
+ command: string;
5
+ title: string;
6
+ detail: string;
7
+ }
8
+ export declare const OPENCLAW_SLASH_COMMAND_CATALOG: readonly RelaySlashCommandDescriptor[];
@@ -0,0 +1,226 @@
1
+ export declare const OPENCLAW_SLASH_COMMAND_CATALOG: readonly [{
2
+ readonly source: "OpenClaw";
3
+ readonly command: "/help";
4
+ readonly title: "help";
5
+ readonly detail: "Show available commands.";
6
+ }, {
7
+ readonly source: "OpenClaw";
8
+ readonly command: "/commands";
9
+ readonly title: "commands";
10
+ readonly detail: "List all slash commands.";
11
+ }, {
12
+ readonly source: "OpenClaw";
13
+ readonly command: "/tools";
14
+ readonly title: "tools";
15
+ readonly detail: "List available runtime tools.";
16
+ }, {
17
+ readonly source: "OpenClaw";
18
+ readonly command: "/skill";
19
+ readonly title: "skill";
20
+ readonly detail: "Run a skill by name.";
21
+ }, {
22
+ readonly source: "OpenClaw";
23
+ readonly command: "/status";
24
+ readonly title: "status";
25
+ readonly detail: "Show current status.";
26
+ }, {
27
+ readonly source: "OpenClaw";
28
+ readonly command: "/tasks";
29
+ readonly title: "tasks";
30
+ readonly detail: "List background tasks for this session.";
31
+ }, {
32
+ readonly source: "OpenClaw";
33
+ readonly command: "/allowlist";
34
+ readonly title: "allowlist";
35
+ readonly detail: "List/add/remove allowlist entries.";
36
+ }, {
37
+ readonly source: "OpenClaw";
38
+ readonly command: "/approve";
39
+ readonly title: "approve";
40
+ readonly detail: "Approve or deny exec requests.";
41
+ }, {
42
+ readonly source: "OpenClaw";
43
+ readonly command: "/context";
44
+ readonly title: "context";
45
+ readonly detail: "Explain how context is built and used.";
46
+ }, {
47
+ readonly source: "OpenClaw";
48
+ readonly command: "/btw";
49
+ readonly title: "btw";
50
+ readonly detail: "Ask a side question without changing future session context.";
51
+ }, {
52
+ readonly source: "OpenClaw";
53
+ readonly command: "/export-session";
54
+ readonly title: "export session";
55
+ readonly detail: "Export current session to HTML file with full system prompt.";
56
+ }, {
57
+ readonly source: "OpenClaw";
58
+ readonly command: "/export";
59
+ readonly title: "export";
60
+ readonly detail: "Export current session to HTML file with full system prompt.";
61
+ }, {
62
+ readonly source: "OpenClaw";
63
+ readonly command: "/tts";
64
+ readonly title: "tts";
65
+ readonly detail: "Control text-to-speech (TTS).";
66
+ }, {
67
+ readonly source: "OpenClaw";
68
+ readonly command: "/whoami";
69
+ readonly title: "whoami";
70
+ readonly detail: "Show your sender id.";
71
+ }, {
72
+ readonly source: "OpenClaw";
73
+ readonly command: "/session";
74
+ readonly title: "session";
75
+ readonly detail: "Manage session-level settings (for example /session idle).";
76
+ }, {
77
+ readonly source: "OpenClaw";
78
+ readonly command: "/subagents";
79
+ readonly title: "subagents";
80
+ readonly detail: "List, kill, log, spawn, or steer subagent runs for this session.";
81
+ }, {
82
+ readonly source: "OpenClaw";
83
+ readonly command: "/acp";
84
+ readonly title: "acp";
85
+ readonly detail: "Manage ACP sessions and runtime options.";
86
+ }, {
87
+ readonly source: "OpenClaw";
88
+ readonly command: "/focus";
89
+ readonly title: "focus";
90
+ readonly detail: "Bind this thread (Discord) or topic/conversation (Telegram) to a session target.";
91
+ }, {
92
+ readonly source: "OpenClaw";
93
+ readonly command: "/unfocus";
94
+ readonly title: "unfocus";
95
+ readonly detail: "Remove the current thread (Discord) or topic/conversation (Telegram) binding.";
96
+ }, {
97
+ readonly source: "OpenClaw";
98
+ readonly command: "/agents";
99
+ readonly title: "agents";
100
+ readonly detail: "List thread-bound agents for this session.";
101
+ }, {
102
+ readonly source: "OpenClaw";
103
+ readonly command: "/kill";
104
+ readonly title: "kill";
105
+ readonly detail: "Kill a running subagent (or all).";
106
+ }, {
107
+ readonly source: "OpenClaw";
108
+ readonly command: "/steer";
109
+ readonly title: "steer";
110
+ readonly detail: "Send guidance to a running subagent.";
111
+ }, {
112
+ readonly source: "OpenClaw";
113
+ readonly command: "/config";
114
+ readonly title: "config";
115
+ readonly detail: "Show or set config values.";
116
+ }, {
117
+ readonly source: "OpenClaw";
118
+ readonly command: "/mcp";
119
+ readonly title: "mcp";
120
+ readonly detail: "Show or set OpenClaw MCP servers.";
121
+ }, {
122
+ readonly source: "OpenClaw";
123
+ readonly command: "/plugins";
124
+ readonly title: "plugins";
125
+ readonly detail: "List, show, enable, or disable plugins.";
126
+ }, {
127
+ readonly source: "OpenClaw";
128
+ readonly command: "/plugin";
129
+ readonly title: "plugin";
130
+ readonly detail: "List, show, enable, or disable plugins.";
131
+ }, {
132
+ readonly source: "OpenClaw";
133
+ readonly command: "/debug";
134
+ readonly title: "debug";
135
+ readonly detail: "Set runtime debug overrides.";
136
+ }, {
137
+ readonly source: "OpenClaw";
138
+ readonly command: "/usage";
139
+ readonly title: "usage";
140
+ readonly detail: "Usage footer or cost summary.";
141
+ }, {
142
+ readonly source: "OpenClaw";
143
+ readonly command: "/stop";
144
+ readonly title: "stop";
145
+ readonly detail: "Stop the current run.";
146
+ }, {
147
+ readonly source: "OpenClaw";
148
+ readonly command: "/restart";
149
+ readonly title: "restart";
150
+ readonly detail: "Restart OpenClaw.";
151
+ }, {
152
+ readonly source: "OpenClaw";
153
+ readonly command: "/activation";
154
+ readonly title: "activation";
155
+ readonly detail: "Set group activation mode.";
156
+ }, {
157
+ readonly source: "OpenClaw";
158
+ readonly command: "/send";
159
+ readonly title: "send";
160
+ readonly detail: "Set send policy.";
161
+ }, {
162
+ readonly source: "OpenClaw";
163
+ readonly command: "/reset";
164
+ readonly title: "reset";
165
+ readonly detail: "Reset the current session.";
166
+ }, {
167
+ readonly source: "OpenClaw";
168
+ readonly command: "/new";
169
+ readonly title: "new";
170
+ readonly detail: "Start a new session.";
171
+ }, {
172
+ readonly source: "OpenClaw";
173
+ readonly command: "/compact";
174
+ readonly title: "compact";
175
+ readonly detail: "Compact the session context.";
176
+ }, {
177
+ readonly source: "OpenClaw";
178
+ readonly command: "/think";
179
+ readonly title: "think";
180
+ readonly detail: "Set thinking level.";
181
+ }, {
182
+ readonly source: "OpenClaw";
183
+ readonly command: "/verbose";
184
+ readonly title: "verbose";
185
+ readonly detail: "Toggle verbose mode.";
186
+ }, {
187
+ readonly source: "OpenClaw";
188
+ readonly command: "/fast";
189
+ readonly title: "fast";
190
+ readonly detail: "Toggle fast mode.";
191
+ }, {
192
+ readonly source: "OpenClaw";
193
+ readonly command: "/reasoning";
194
+ readonly title: "reasoning";
195
+ readonly detail: "Toggle reasoning visibility.";
196
+ }, {
197
+ readonly source: "OpenClaw";
198
+ readonly command: "/elevated";
199
+ readonly title: "elevated";
200
+ readonly detail: "Toggle elevated mode.";
201
+ }, {
202
+ readonly source: "OpenClaw";
203
+ readonly command: "/exec";
204
+ readonly title: "exec";
205
+ readonly detail: "Set exec defaults for this session.";
206
+ }, {
207
+ readonly source: "OpenClaw";
208
+ readonly command: "/model";
209
+ readonly title: "model";
210
+ readonly detail: "Show or set the model.";
211
+ }, {
212
+ readonly source: "OpenClaw";
213
+ readonly command: "/models";
214
+ readonly title: "models";
215
+ readonly detail: "List model providers or provider models.";
216
+ }, {
217
+ readonly source: "OpenClaw";
218
+ readonly command: "/queue";
219
+ readonly title: "queue";
220
+ readonly detail: "Adjust queue settings.";
221
+ }, {
222
+ readonly source: "OpenClaw";
223
+ readonly command: "/bash";
224
+ readonly title: "bash";
225
+ readonly detail: "Run host shell commands (host-only).";
226
+ }];