openclaw-channel-xiaozhu 2.1.0 → 3.0.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/channel.d.ts +393 -18
- package/dist/channel.d.ts.map +1 -1
- package/dist/channel.js +1572 -31
- package/dist/channel.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/relay/client.d.ts.map +1 -1
- package/dist/relay/client.js +6 -2
- package/dist/relay/client.js.map +1 -1
- package/dist/server.d.ts +18 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +169 -4
- package/dist/server.js.map +1 -1
- package/dist/setup.d.ts +63 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +330 -0
- package/dist/setup.js.map +1 -0
- package/dist/shared/inbound.js +1 -1
- package/dist/shared/inbound.js.map +1 -1
- package/dist/shared/security.d.ts +2 -1
- package/dist/shared/security.d.ts.map +1 -1
- package/dist/shared/security.js +3 -2
- package/dist/shared/security.js.map +1 -1
- package/dist/types.d.ts +217 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/openclaw-sessions.d.ts +79 -0
- package/dist/utils/openclaw-sessions.d.ts.map +1 -0
- package/dist/utils/openclaw-sessions.js +49 -0
- package/dist/utils/openclaw-sessions.js.map +1 -0
- package/dist/utils/rate-limiter.d.ts.map +1 -1
- package/dist/utils/rate-limiter.js +2 -4
- package/dist/utils/rate-limiter.js.map +1 -1
- package/dist/utils/session-store.d.ts.map +1 -1
- package/dist/utils/session-store.js +7 -0
- package/dist/utils/session-store.js.map +1 -1
- package/openclaw.plugin.json +138 -3
- package/package.json +10 -48
- package/skills/xiaozhu-cron-job/SKILL.md +6 -6
- package/LICENSE +0 -21
- package/README.md +0 -499
- package/demo/app.js +0 -350
- package/demo/index.html +0 -36
- package/demo/style.css +0 -249
- package/demo/think.css +0 -590
- package/demo/think.html +0 -92
- package/demo/think.js +0 -532
- package/dist/relay/cli.d.ts +0 -10
- package/dist/relay/cli.d.ts.map +0 -1
- package/dist/relay/cli.js +0 -28
- package/dist/relay/cli.js.map +0 -1
- package/dist/relay/server.d.ts +0 -16
- package/dist/relay/server.d.ts.map +0 -1
- package/dist/relay/server.js +0 -322
- package/dist/relay/server.js.map +0 -1
- package/dist/sdk/index.d.ts +0 -259
- package/dist/sdk/index.d.ts.map +0 -1
- package/dist/sdk/index.js +0 -415
- package/dist/sdk/index.js.map +0 -1
- package/dist/sdk/sse.d.ts +0 -18
- package/dist/sdk/sse.d.ts.map +0 -1
- package/dist/sdk/sse.js +0 -67
- package/dist/sdk/sse.js.map +0 -1
- package/dist/sdk/types.d.ts +0 -231
- package/dist/sdk/types.d.ts.map +0 -1
- package/dist/sdk/types.js +0 -5
- package/dist/sdk/types.js.map +0 -1
- package/dist/shared/errors.d.ts +0 -47
- package/dist/shared/errors.d.ts.map +0 -1
- package/dist/shared/errors.js +0 -52
- package/dist/shared/errors.js.map +0 -1
- package/dist/standalone/app.d.ts +0 -16
- package/dist/standalone/app.d.ts.map +0 -1
- package/dist/standalone/app.js +0 -194
- package/dist/standalone/app.js.map +0 -1
- package/dist/standalone/auth.d.ts +0 -19
- package/dist/standalone/auth.d.ts.map +0 -1
- package/dist/standalone/auth.js +0 -45
- package/dist/standalone/auth.js.map +0 -1
- package/dist/standalone/cli.d.ts +0 -10
- package/dist/standalone/cli.d.ts.map +0 -1
- package/dist/standalone/cli.js +0 -107
- package/dist/standalone/cli.js.map +0 -1
- package/dist/standalone/media-store.d.ts +0 -30
- package/dist/standalone/media-store.d.ts.map +0 -1
- package/dist/standalone/media-store.js +0 -150
- package/dist/standalone/media-store.js.map +0 -1
- package/dist/standalone/migrate-to-sqlite.d.ts +0 -10
- package/dist/standalone/migrate-to-sqlite.d.ts.map +0 -1
- package/dist/standalone/migrate-to-sqlite.js +0 -194
- package/dist/standalone/migrate-to-sqlite.js.map +0 -1
- package/dist/standalone/router.d.ts +0 -34
- package/dist/standalone/router.d.ts.map +0 -1
- package/dist/standalone/router.js +0 -94
- package/dist/standalone/router.js.map +0 -1
- package/dist/standalone/routes.d.ts +0 -12
- package/dist/standalone/routes.d.ts.map +0 -1
- package/dist/standalone/routes.js +0 -508
- package/dist/standalone/routes.js.map +0 -1
- package/dist/standalone/server-context.d.ts +0 -73
- package/dist/standalone/server-context.d.ts.map +0 -1
- package/dist/standalone/server-context.js +0 -38
- package/dist/standalone/server-context.js.map +0 -1
- package/dist/standalone/store.d.ts +0 -36
- package/dist/standalone/store.d.ts.map +0 -1
- package/dist/standalone/store.js +0 -163
- package/dist/standalone/store.js.map +0 -1
- package/dist/standalone/thought-db.d.ts +0 -92
- package/dist/standalone/thought-db.d.ts.map +0 -1
- package/dist/standalone/thought-db.js +0 -677
- package/dist/standalone/thought-db.js.map +0 -1
- package/dist/standalone/thought-processor.d.ts +0 -36
- package/dist/standalone/thought-processor.d.ts.map +0 -1
- package/dist/standalone/thought-processor.js +0 -352
- package/dist/standalone/thought-processor.js.map +0 -1
- package/dist/standalone/thought-routes.d.ts +0 -13
- package/dist/standalone/thought-routes.d.ts.map +0 -1
- package/dist/standalone/thought-routes.js +0 -326
- package/dist/standalone/thought-routes.js.map +0 -1
- package/dist/standalone/thought-store-factory.d.ts +0 -12
- package/dist/standalone/thought-store-factory.d.ts.map +0 -1
- package/dist/standalone/thought-store-factory.js +0 -20
- package/dist/standalone/thought-store-factory.js.map +0 -1
- package/dist/standalone/thought-store.d.ts +0 -103
- package/dist/standalone/thought-store.d.ts.map +0 -1
- package/dist/standalone/thought-store.js +0 -502
- package/dist/standalone/thought-store.js.map +0 -1
- package/dist/standalone/thought-types.d.ts +0 -169
- package/dist/standalone/thought-types.d.ts.map +0 -1
- package/dist/standalone/thought-types.js +0 -5
- package/dist/standalone/thought-types.js.map +0 -1
- package/dist/standalone/types.d.ts +0 -105
- package/dist/standalone/types.d.ts.map +0 -1
- package/dist/standalone/types.js +0 -5
- package/dist/standalone/types.js.map +0 -1
- package/dist/standalone/ws-handler.d.ts +0 -16
- package/dist/standalone/ws-handler.d.ts.map +0 -1
- package/dist/standalone/ws-handler.js +0 -183
- package/dist/standalone/ws-handler.js.map +0 -1
- package/docs/API.md +0 -1844
- package/docs/DEVELOPMENT.md +0 -299
- package/docs/MILESTONES.md +0 -135
- package/docs/RISKS.md +0 -179
- package/docs/ROADMAP.md +0 -144
package/dist/channel.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Channel 插件对象 — config /
|
|
2
|
+
* Channel 插件对象 — 主适配器集合(含 config / setup / onboarding / gateway /
|
|
3
|
+
* outbound / status / messaging / groups / mentions / pairing / security /
|
|
4
|
+
* auth / elevated / commands / streaming / threading / agentPrompt /
|
|
5
|
+
* directory / resolver / actions / heartbeat)
|
|
3
6
|
*/
|
|
4
|
-
import
|
|
5
|
-
|
|
7
|
+
import { type SetupInput } from "./setup.js";
|
|
8
|
+
import type { ChannelAuthLoginParams, ChannelMessageActionContext, ChannelPollContext, ChannelPollResult, ChannelResolveTargetParams, ChannelStatusIssue, ChannelConfig, ChannelDirectoryListGroupMembersParams, ChannelDirectoryEntry, ChannelDirectoryListParams, ChannelDirectorySelfParams, ChannelGroupContext, ChannelHeartbeatRecipientsParams, ChannelThreadingContext, ChannelThreadingToolContext, ChannelToolSend, ChannelResolverParams, ChannelSecurityContext, ChannelSecurityDmPolicy, GatewayContext, HttpApiAccount, Logger, PluginRuntime } from "./types.js";
|
|
9
|
+
export declare function setRuntime(rt: PluginRuntime, logger?: Logger): void;
|
|
6
10
|
export declare const httpChannelPlugin: {
|
|
7
11
|
id: string;
|
|
8
12
|
meta: {
|
|
@@ -10,27 +14,117 @@ export declare const httpChannelPlugin: {
|
|
|
10
14
|
label: string;
|
|
11
15
|
selectionLabel: string;
|
|
12
16
|
blurb: string;
|
|
17
|
+
docsPath: string;
|
|
13
18
|
order: number;
|
|
14
19
|
aliases: string[];
|
|
15
20
|
};
|
|
16
21
|
capabilities: {
|
|
17
22
|
chatTypes: readonly ["direct", "group"];
|
|
18
23
|
reactions: boolean;
|
|
24
|
+
polls: boolean;
|
|
25
|
+
edit: boolean;
|
|
26
|
+
unsend: boolean;
|
|
27
|
+
reply: boolean;
|
|
28
|
+
effects: boolean;
|
|
29
|
+
groupManagement: boolean;
|
|
19
30
|
threads: boolean;
|
|
20
31
|
media: boolean;
|
|
21
32
|
nativeCommands: boolean;
|
|
22
33
|
blockStreaming: boolean;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
34
|
+
};
|
|
35
|
+
defaults: {
|
|
36
|
+
queue: {
|
|
37
|
+
debounceMs: number;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
onboarding: {
|
|
41
|
+
channel: string;
|
|
42
|
+
getStatus: ({ cfg }: {
|
|
43
|
+
cfg: ChannelConfig;
|
|
44
|
+
}) => Promise<{
|
|
45
|
+
channel: string;
|
|
46
|
+
configured: boolean;
|
|
47
|
+
statusLines: string[];
|
|
48
|
+
selectionHint: string;
|
|
49
|
+
quickstartScore: number;
|
|
50
|
+
}>;
|
|
51
|
+
configure: (ctx: {
|
|
52
|
+
cfg: ChannelConfig;
|
|
53
|
+
prompter?: unknown;
|
|
54
|
+
input?: SetupInput;
|
|
55
|
+
accountOverrides?: Record<string, string>;
|
|
56
|
+
forceAllowFrom?: boolean;
|
|
57
|
+
}) => Promise<{
|
|
58
|
+
cfg: ChannelConfig;
|
|
59
|
+
accountId: string;
|
|
60
|
+
}>;
|
|
61
|
+
configureInteractive: (ctx: {
|
|
62
|
+
cfg: ChannelConfig;
|
|
63
|
+
configured: boolean;
|
|
64
|
+
prompter?: unknown;
|
|
65
|
+
input?: SetupInput;
|
|
66
|
+
accountOverrides?: Record<string, string>;
|
|
67
|
+
forceAllowFrom?: boolean;
|
|
68
|
+
}) => Promise<{
|
|
69
|
+
cfg: ChannelConfig;
|
|
70
|
+
accountId: string;
|
|
71
|
+
} | "skip">;
|
|
72
|
+
configureWhenConfigured: (ctx: {
|
|
73
|
+
cfg: ChannelConfig;
|
|
74
|
+
configured: boolean;
|
|
75
|
+
prompter?: unknown;
|
|
76
|
+
input?: SetupInput;
|
|
77
|
+
accountOverrides?: Record<string, string>;
|
|
78
|
+
forceAllowFrom?: boolean;
|
|
79
|
+
}) => Promise<{
|
|
80
|
+
cfg: ChannelConfig;
|
|
81
|
+
accountId: string;
|
|
82
|
+
} | "skip">;
|
|
83
|
+
dmPolicy: {
|
|
84
|
+
label: string;
|
|
85
|
+
channel: string;
|
|
86
|
+
policyKey: string;
|
|
87
|
+
allowFromKey: string;
|
|
88
|
+
getCurrent: (cfg: ChannelConfig) => "open" | "allowlist";
|
|
89
|
+
setPolicy: (cfg: ChannelConfig, policy: "open" | "allowlist") => ChannelConfig;
|
|
90
|
+
promptAllowFrom: ({ cfg, prompter, accountId, }: {
|
|
91
|
+
cfg: ChannelConfig;
|
|
92
|
+
prompter?: unknown;
|
|
93
|
+
accountId?: string;
|
|
94
|
+
}) => Promise<ChannelConfig>;
|
|
95
|
+
};
|
|
96
|
+
disable: (cfg: ChannelConfig) => ChannelConfig;
|
|
97
|
+
};
|
|
98
|
+
setup: {
|
|
99
|
+
resolveAccountId: ({ cfg, accountId, input }: {
|
|
100
|
+
cfg: ChannelConfig;
|
|
101
|
+
accountId?: string;
|
|
102
|
+
input?: SetupInput;
|
|
103
|
+
}) => string;
|
|
104
|
+
resolveBindingAccountId: ({ cfg, agentId, accountId }: {
|
|
105
|
+
cfg: ChannelConfig;
|
|
106
|
+
agentId: string;
|
|
107
|
+
accountId?: string;
|
|
108
|
+
}) => string | undefined;
|
|
109
|
+
applyAccountName: ({ cfg, accountId, name }: {
|
|
110
|
+
cfg: ChannelConfig;
|
|
111
|
+
accountId: string;
|
|
112
|
+
name?: string;
|
|
113
|
+
}) => ChannelConfig;
|
|
114
|
+
applyAccountConfig: ({ cfg, accountId, input }: {
|
|
115
|
+
cfg: ChannelConfig;
|
|
116
|
+
accountId: string;
|
|
117
|
+
input: SetupInput;
|
|
118
|
+
}) => ChannelConfig;
|
|
119
|
+
validateInput: ({ accountId, input }: {
|
|
120
|
+
cfg: ChannelConfig;
|
|
121
|
+
accountId: string;
|
|
122
|
+
input: SetupInput;
|
|
123
|
+
}) => string | null;
|
|
30
124
|
};
|
|
31
125
|
config: {
|
|
32
126
|
listAccountIds: (cfg: ChannelConfig) => string[];
|
|
33
|
-
resolveAccount: (cfg: ChannelConfig, accountId
|
|
127
|
+
resolveAccount: (cfg: ChannelConfig, accountId?: string | null) => HttpApiAccount;
|
|
34
128
|
defaultAccountId: (_cfg: ChannelConfig) => string;
|
|
35
129
|
isConfigured: (account: HttpApiAccount) => boolean;
|
|
36
130
|
describeAccount: (account: HttpApiAccount) => {
|
|
@@ -38,11 +132,6 @@ export declare const httpChannelPlugin: {
|
|
|
38
132
|
name: string;
|
|
39
133
|
enabled: boolean;
|
|
40
134
|
configured: boolean;
|
|
41
|
-
features: {
|
|
42
|
-
perIpRateLimit: boolean;
|
|
43
|
-
webhookSigning: boolean;
|
|
44
|
-
commands: boolean;
|
|
45
|
-
};
|
|
46
135
|
};
|
|
47
136
|
setAccountEnabled: ({ cfg, accountId, enabled }: {
|
|
48
137
|
cfg: ChannelConfig;
|
|
@@ -50,7 +139,7 @@ export declare const httpChannelPlugin: {
|
|
|
50
139
|
enabled: boolean;
|
|
51
140
|
}) => {
|
|
52
141
|
channels: {
|
|
53
|
-
"channel-xiaozhu": {
|
|
142
|
+
"openclaw-channel-xiaozhu": {
|
|
54
143
|
accounts: {
|
|
55
144
|
[x: string]: Record<string, unknown>;
|
|
56
145
|
};
|
|
@@ -58,7 +147,7 @@ export declare const httpChannelPlugin: {
|
|
|
58
147
|
};
|
|
59
148
|
} | {
|
|
60
149
|
channels: {
|
|
61
|
-
"channel-xiaozhu": {
|
|
150
|
+
"openclaw-channel-xiaozhu": {
|
|
62
151
|
enabled: boolean;
|
|
63
152
|
};
|
|
64
153
|
};
|
|
@@ -71,13 +160,53 @@ export declare const httpChannelPlugin: {
|
|
|
71
160
|
[x: string]: Record<string, unknown>;
|
|
72
161
|
};
|
|
73
162
|
};
|
|
163
|
+
resolveAllowFrom: ({ cfg, accountId }: {
|
|
164
|
+
cfg: ChannelConfig;
|
|
165
|
+
accountId?: string | null;
|
|
166
|
+
}) => string[] | undefined;
|
|
167
|
+
formatAllowFrom: ({ allowFrom }: {
|
|
168
|
+
cfg: ChannelConfig;
|
|
169
|
+
accountId?: string | null;
|
|
170
|
+
allowFrom: Array<string | number>;
|
|
171
|
+
}) => string[];
|
|
172
|
+
resolveDefaultTo: () => string | undefined;
|
|
74
173
|
};
|
|
75
174
|
gateway: {
|
|
76
175
|
startAccount: (ctx: GatewayContext) => Promise<void>;
|
|
176
|
+
stopAccount: (ctx: GatewayContext) => Promise<void>;
|
|
177
|
+
loginWithQrStart: ({ accountId }: {
|
|
178
|
+
accountId?: string;
|
|
179
|
+
}) => Promise<{
|
|
180
|
+
message: string;
|
|
181
|
+
}>;
|
|
182
|
+
loginWithQrWait: ({ accountId }: {
|
|
183
|
+
accountId?: string;
|
|
184
|
+
}) => Promise<{
|
|
185
|
+
connected: boolean;
|
|
186
|
+
message: string;
|
|
187
|
+
}>;
|
|
188
|
+
logoutAccount: ({ accountId }: {
|
|
189
|
+
accountId: string;
|
|
190
|
+
}) => Promise<{
|
|
191
|
+
cleared: boolean;
|
|
192
|
+
loggedOut: boolean;
|
|
193
|
+
stopped: boolean;
|
|
194
|
+
message: string;
|
|
195
|
+
}>;
|
|
77
196
|
};
|
|
78
197
|
outbound: {
|
|
79
198
|
deliveryMode: "direct";
|
|
80
199
|
textChunkLimit: number;
|
|
200
|
+
pollMaxOptions: number;
|
|
201
|
+
chunker: (text: string, limit: number) => string[];
|
|
202
|
+
chunkerMode: "markdown";
|
|
203
|
+
resolveTarget: (params: ChannelResolveTargetParams) => {
|
|
204
|
+
ok: true;
|
|
205
|
+
to: string;
|
|
206
|
+
} | {
|
|
207
|
+
ok: false;
|
|
208
|
+
error: Error;
|
|
209
|
+
};
|
|
81
210
|
sendText: (opts: Record<string, unknown>) => Promise<{
|
|
82
211
|
channel: string;
|
|
83
212
|
ok: boolean;
|
|
@@ -96,6 +225,23 @@ export declare const httpChannelPlugin: {
|
|
|
96
225
|
ok: boolean;
|
|
97
226
|
error?: undefined;
|
|
98
227
|
}>;
|
|
228
|
+
sendPayload: (ctx: Record<string, unknown>) => Promise<{
|
|
229
|
+
channel: string;
|
|
230
|
+
ok: boolean;
|
|
231
|
+
error: Error;
|
|
232
|
+
messageId?: undefined;
|
|
233
|
+
} | {
|
|
234
|
+
channel: string;
|
|
235
|
+
ok: boolean;
|
|
236
|
+
error: Error;
|
|
237
|
+
messageId: string;
|
|
238
|
+
} | {
|
|
239
|
+
channel: string;
|
|
240
|
+
ok: boolean;
|
|
241
|
+
messageId: string;
|
|
242
|
+
error?: undefined;
|
|
243
|
+
}>;
|
|
244
|
+
sendPoll: (ctx: ChannelPollContext) => Promise<ChannelPollResult>;
|
|
99
245
|
};
|
|
100
246
|
status: {
|
|
101
247
|
defaultRuntime: {
|
|
@@ -103,7 +249,10 @@ export declare const httpChannelPlugin: {
|
|
|
103
249
|
running: boolean;
|
|
104
250
|
connected: boolean;
|
|
105
251
|
lastStartAt: null;
|
|
252
|
+
lastStopAt: null;
|
|
106
253
|
lastError: null;
|
|
254
|
+
lastInboundAt: null;
|
|
255
|
+
lastOutboundAt: null;
|
|
107
256
|
};
|
|
108
257
|
probeAccount: ({ account, timeoutMs }: {
|
|
109
258
|
account: HttpApiAccount;
|
|
@@ -112,6 +261,232 @@ export declare const httpChannelPlugin: {
|
|
|
112
261
|
ok: boolean;
|
|
113
262
|
latencyMs: number;
|
|
114
263
|
}>;
|
|
264
|
+
buildAccountSnapshot: ({ account, runtime }: {
|
|
265
|
+
account: HttpApiAccount;
|
|
266
|
+
cfg: ChannelConfig;
|
|
267
|
+
runtime?: Record<string, unknown>;
|
|
268
|
+
}) => {
|
|
269
|
+
accountId: string;
|
|
270
|
+
name: string;
|
|
271
|
+
enabled: boolean;
|
|
272
|
+
configured: boolean;
|
|
273
|
+
running: boolean;
|
|
274
|
+
connected: boolean;
|
|
275
|
+
lastStartAt: number | null;
|
|
276
|
+
lastStopAt: number | null;
|
|
277
|
+
lastError: string | null;
|
|
278
|
+
mode: "webhook" | "cloud";
|
|
279
|
+
lastInboundAt: number | null;
|
|
280
|
+
lastOutboundAt: number | null;
|
|
281
|
+
};
|
|
282
|
+
buildChannelSummary: ({ snapshot }: {
|
|
283
|
+
account: HttpApiAccount;
|
|
284
|
+
cfg: ChannelConfig;
|
|
285
|
+
defaultAccountId: string;
|
|
286
|
+
snapshot: Record<string, unknown>;
|
|
287
|
+
}) => {
|
|
288
|
+
configured: boolean;
|
|
289
|
+
running: boolean;
|
|
290
|
+
connected: boolean;
|
|
291
|
+
mode: string;
|
|
292
|
+
lastStartAt: {} | null;
|
|
293
|
+
lastStopAt: {} | null;
|
|
294
|
+
lastError: {} | null;
|
|
295
|
+
lastInboundAt: {} | null;
|
|
296
|
+
lastOutboundAt: {} | null;
|
|
297
|
+
};
|
|
298
|
+
resolveAccountState: ({ configured, enabled }: {
|
|
299
|
+
account: HttpApiAccount;
|
|
300
|
+
cfg: ChannelConfig;
|
|
301
|
+
configured: boolean;
|
|
302
|
+
enabled: boolean;
|
|
303
|
+
}) => "enabled" | "disabled" | "not configured";
|
|
304
|
+
collectStatusIssues: (accounts: Array<Record<string, unknown>>) => ChannelStatusIssue[];
|
|
305
|
+
};
|
|
306
|
+
messaging: {
|
|
307
|
+
normalizeTarget: (raw: string) => string | undefined;
|
|
308
|
+
targetResolver: {
|
|
309
|
+
looksLikeId: (raw: string, _normalized?: string) => boolean;
|
|
310
|
+
hint: string;
|
|
311
|
+
};
|
|
312
|
+
formatTargetDisplay: ({ target, display }: {
|
|
313
|
+
target: string;
|
|
314
|
+
display?: string;
|
|
315
|
+
kind?: string;
|
|
316
|
+
}) => string;
|
|
317
|
+
};
|
|
318
|
+
resolver: {
|
|
319
|
+
resolveTargets: ({ cfg, accountId, inputs, kind, runtime: _runtime, }: ChannelResolverParams) => Promise<({
|
|
320
|
+
input: string;
|
|
321
|
+
resolved: boolean;
|
|
322
|
+
note: string;
|
|
323
|
+
id?: undefined;
|
|
324
|
+
name?: undefined;
|
|
325
|
+
} | {
|
|
326
|
+
input: string;
|
|
327
|
+
resolved: boolean;
|
|
328
|
+
id: string;
|
|
329
|
+
name: string;
|
|
330
|
+
note: string;
|
|
331
|
+
})[]>;
|
|
332
|
+
};
|
|
333
|
+
groups: {
|
|
334
|
+
resolveRequireMention: ({ cfg, accountId }: {
|
|
335
|
+
cfg: ChannelConfig;
|
|
336
|
+
accountId?: string | null;
|
|
337
|
+
}) => boolean | undefined;
|
|
338
|
+
resolveGroupIntroHint: ({ cfg, accountId }: {
|
|
339
|
+
cfg: ChannelConfig;
|
|
340
|
+
accountId?: string | null;
|
|
341
|
+
}) => string | undefined;
|
|
342
|
+
resolveToolPolicy: ({ cfg, accountId }: ChannelGroupContext) => {
|
|
343
|
+
deny?: string[] | undefined;
|
|
344
|
+
alsoAllow?: string[] | undefined;
|
|
345
|
+
allow?: string[] | undefined;
|
|
346
|
+
} | undefined;
|
|
347
|
+
};
|
|
348
|
+
mentions: {
|
|
349
|
+
stripPatterns: () => string[];
|
|
350
|
+
stripMentions: ({ text }: {
|
|
351
|
+
text: string;
|
|
352
|
+
}) => string;
|
|
353
|
+
};
|
|
354
|
+
pairing: {
|
|
355
|
+
idLabel: string;
|
|
356
|
+
normalizeAllowEntry: (entry: string) => string;
|
|
357
|
+
notifyApproval: () => Promise<void>;
|
|
358
|
+
};
|
|
359
|
+
security: {
|
|
360
|
+
resolveDmPolicy: ({ cfg, accountId, account, }: ChannelSecurityContext<HttpApiAccount>) => ChannelSecurityDmPolicy;
|
|
361
|
+
collectWarnings: ({ account }: ChannelSecurityContext<HttpApiAccount>) => string[];
|
|
362
|
+
};
|
|
363
|
+
elevated: {
|
|
364
|
+
allowFromFallback: ({ cfg, accountId }: {
|
|
365
|
+
cfg: ChannelConfig;
|
|
366
|
+
accountId?: string | null;
|
|
367
|
+
}) => string[] | undefined;
|
|
368
|
+
};
|
|
369
|
+
auth: {
|
|
370
|
+
login: ({ cfg, accountId, runtime, verbose, channelInput, }: ChannelAuthLoginParams) => Promise<void>;
|
|
371
|
+
};
|
|
372
|
+
commands: {
|
|
373
|
+
enforceOwnerForCommands: boolean;
|
|
374
|
+
skipWhenConfigEmpty: boolean;
|
|
375
|
+
};
|
|
376
|
+
streaming: {
|
|
377
|
+
blockStreamingCoalesceDefaults: {
|
|
378
|
+
minChars: number;
|
|
379
|
+
idleMs: number;
|
|
380
|
+
};
|
|
381
|
+
};
|
|
382
|
+
threading: {
|
|
383
|
+
resolveReplyToMode: ({ cfg, accountId }: {
|
|
384
|
+
cfg: ChannelConfig;
|
|
385
|
+
accountId?: string | null;
|
|
386
|
+
chatType?: string | null;
|
|
387
|
+
}) => "off" | "first" | "all";
|
|
388
|
+
allowExplicitReplyTagsWhenOff: boolean;
|
|
389
|
+
allowTagsWhenOff: boolean;
|
|
390
|
+
buildToolContext: ({ cfg, accountId, context, hasRepliedRef, }: {
|
|
391
|
+
cfg: ChannelConfig;
|
|
392
|
+
accountId?: string | null;
|
|
393
|
+
context: ChannelThreadingContext;
|
|
394
|
+
hasRepliedRef?: {
|
|
395
|
+
value: boolean;
|
|
396
|
+
};
|
|
397
|
+
}) => ChannelThreadingToolContext;
|
|
398
|
+
};
|
|
399
|
+
agentPrompt: {
|
|
400
|
+
messageToolHints: () => string[];
|
|
401
|
+
};
|
|
402
|
+
agentTools: ({ cfg }: {
|
|
403
|
+
cfg?: ChannelConfig;
|
|
404
|
+
}) => {
|
|
405
|
+
label: string;
|
|
406
|
+
name: string;
|
|
407
|
+
ownerOnly: boolean;
|
|
408
|
+
description: string;
|
|
409
|
+
parameters: {
|
|
410
|
+
type: string;
|
|
411
|
+
properties: {
|
|
412
|
+
action: {
|
|
413
|
+
type: string;
|
|
414
|
+
enum: string[];
|
|
415
|
+
};
|
|
416
|
+
accountId: {
|
|
417
|
+
type: string;
|
|
418
|
+
};
|
|
419
|
+
input: {
|
|
420
|
+
type: string;
|
|
421
|
+
};
|
|
422
|
+
inputs: {
|
|
423
|
+
type: string;
|
|
424
|
+
items: {
|
|
425
|
+
type: string;
|
|
426
|
+
};
|
|
427
|
+
};
|
|
428
|
+
token: {
|
|
429
|
+
type: string;
|
|
430
|
+
};
|
|
431
|
+
verbose: {
|
|
432
|
+
type: string;
|
|
433
|
+
};
|
|
434
|
+
limit: {
|
|
435
|
+
type: string;
|
|
436
|
+
minimum: number;
|
|
437
|
+
maximum: number;
|
|
438
|
+
};
|
|
439
|
+
};
|
|
440
|
+
required: string[];
|
|
441
|
+
additionalProperties: boolean;
|
|
442
|
+
};
|
|
443
|
+
execute: (_toolCallId: string, rawArgs: unknown) => Promise<{
|
|
444
|
+
content: Array<{
|
|
445
|
+
type: "text";
|
|
446
|
+
text: string;
|
|
447
|
+
}>;
|
|
448
|
+
details: unknown;
|
|
449
|
+
}>;
|
|
450
|
+
}[];
|
|
451
|
+
directory: {
|
|
452
|
+
self: ({ accountId }: ChannelDirectorySelfParams) => Promise<ChannelDirectoryEntry | null>;
|
|
453
|
+
listPeers: ({ accountId, query, limit }: ChannelDirectoryListParams) => Promise<ChannelDirectoryEntry[]>;
|
|
454
|
+
listPeersLive: (params: ChannelDirectoryListParams) => Promise<ChannelDirectoryEntry[]>;
|
|
455
|
+
listGroups: ({ accountId, query, limit }: ChannelDirectoryListParams) => Promise<ChannelDirectoryEntry[]>;
|
|
456
|
+
listGroupsLive: (params: ChannelDirectoryListParams) => Promise<ChannelDirectoryEntry[]>;
|
|
457
|
+
listGroupMembers: (params: ChannelDirectoryListGroupMembersParams) => Promise<ChannelDirectoryEntry[]>;
|
|
458
|
+
};
|
|
459
|
+
actions: {
|
|
460
|
+
listActions: () => string[];
|
|
461
|
+
supportsAction: ({ action }: {
|
|
462
|
+
action: string;
|
|
463
|
+
}) => boolean;
|
|
464
|
+
supportsButtons: () => boolean;
|
|
465
|
+
supportsCards: () => boolean;
|
|
466
|
+
extractToolSend: ({ args }: {
|
|
467
|
+
args: Record<string, unknown>;
|
|
468
|
+
}) => ChannelToolSend | null;
|
|
469
|
+
handleAction: (ctx: ChannelMessageActionContext) => Promise<{
|
|
470
|
+
content: Array<{
|
|
471
|
+
type: "text";
|
|
472
|
+
text: string;
|
|
473
|
+
}>;
|
|
474
|
+
details: Record<string, unknown>;
|
|
475
|
+
isError?: boolean;
|
|
476
|
+
}>;
|
|
477
|
+
};
|
|
478
|
+
heartbeat: {
|
|
479
|
+
checkReady: ({ cfg, accountId }: {
|
|
480
|
+
cfg: ChannelConfig;
|
|
481
|
+
accountId?: string | null;
|
|
482
|
+
}) => Promise<{
|
|
483
|
+
ok: boolean;
|
|
484
|
+
reason: string;
|
|
485
|
+
}>;
|
|
486
|
+
resolveRecipients: ({ cfg, opts }: ChannelHeartbeatRecipientsParams) => {
|
|
487
|
+
recipients: string[];
|
|
488
|
+
source: string;
|
|
489
|
+
};
|
|
115
490
|
};
|
|
116
491
|
};
|
|
117
492
|
//# sourceMappingURL=channel.d.ts.map
|
package/dist/channel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
|