@ozaiya/openclaw-channel 0.10.36 → 0.10.38
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/src/botEmail.d.ts +85 -0
- package/dist/src/botEmail.js +713 -0
- package/dist/src/botEmail.js.map +1 -0
- package/dist/src/channel.js +203 -3
- package/dist/src/channel.js.map +1 -1
- package/dist/src/desktopContainer.d.ts +0 -1
- package/dist/src/gateway.js +24 -6
- package/dist/src/gateway.js.map +1 -1
- package/dist/src/mailCompose.d.ts +40 -0
- package/dist/src/mailCompose.js +50 -0
- package/dist/src/mailCompose.js.map +1 -0
- package/package.json +7 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"botEmail.js","sourceRoot":"","sources":["../../src/botEmail.ts"],"names":[],"mappings":"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"}
|
package/dist/src/channel.js
CHANGED
|
@@ -31,6 +31,7 @@ import { summarizeWithDoubao } from "./doubao.js";
|
|
|
31
31
|
import { fetchXueqiuPost, searchXueqiuPosts } from "./xueqiu.js";
|
|
32
32
|
import { fetchSocialMediaPost, searchSocialMedia, extractSocialMediaContent } from "./socialMedia.js";
|
|
33
33
|
import { requestConfirmation, parseActionCallback, resolveConfirmation } from "./actionConfirmation.js";
|
|
34
|
+
import { createBotEmailTool, emailAddonOf, newMailNotice, watchMailboxes } from "./botEmail.js";
|
|
34
35
|
const DEFAULT_API_BASE_URL = "https://api.ozaiya.com";
|
|
35
36
|
const DEFAULT_WEBHOOK_PATH = "/ozaiya/webhook";
|
|
36
37
|
const DEFAULT_ACCOUNT_ID = "default";
|
|
@@ -104,6 +105,15 @@ function categorize(toolName) {
|
|
|
104
105
|
}
|
|
105
106
|
// Active dispatches keyed by accountId (one dispatch at a time per account)
|
|
106
107
|
const activeDispatches = new Map();
|
|
108
|
+
/** Bot id → the chat a new-mail turn is running in (the owner's chat with the bot). */
|
|
109
|
+
const mailTurns = new Map();
|
|
110
|
+
/** Bot id → its running mailbox watch, and the config it was started with. */
|
|
111
|
+
const mailWatches = new Map();
|
|
112
|
+
/** Bot id → new-mail turns run one after another. */
|
|
113
|
+
const mailTurnQueues = new Map();
|
|
114
|
+
/** Bot id → when its recent new-mail turns started (a flood of mail doesn't become a flood of turns). */
|
|
115
|
+
const mailTurnTimes = new Map();
|
|
116
|
+
const MAIL_TURNS_PER_HOUR = 20;
|
|
107
117
|
function buildTaskProgressContent(dispatch, completed) {
|
|
108
118
|
return {
|
|
109
119
|
taskProgress: {
|
|
@@ -1487,6 +1497,7 @@ function buildChannelTools(account, cfg) {
|
|
|
1487
1497
|
createMakePhoneCallTool(account, cfg),
|
|
1488
1498
|
createHangUpCallTool(account),
|
|
1489
1499
|
createStartInAppCallTool(account, cfg),
|
|
1500
|
+
createRequestUserApprovalTool(account),
|
|
1490
1501
|
];
|
|
1491
1502
|
// A bot hosted on Ozaiya pays per addon, so its addon-backed tools appear only once the
|
|
1492
1503
|
// addon is on; a self-hosted gateway keeps every tool its own config enables.
|
|
@@ -1508,6 +1519,10 @@ function buildChannelTools(account, cfg) {
|
|
|
1508
1519
|
const summarizeTool = addonOn("web_research") ? createSummarizeUrlTool(cfg) : null;
|
|
1509
1520
|
if (summarizeTool)
|
|
1510
1521
|
tools.push(summarizeTool);
|
|
1522
|
+
// The bot's own mailbox (email add-on): there only once the owner has added one.
|
|
1523
|
+
const emailConfig = emailAddonOf(account);
|
|
1524
|
+
if (emailConfig)
|
|
1525
|
+
tools.push(createEmailToolFor(account, emailConfig));
|
|
1511
1526
|
// Plan tool: lets the agent declare + maintain a high-level task plan that the
|
|
1512
1527
|
// app renders as a live "task progress N/M" checklist (distinct from tool steps).
|
|
1513
1528
|
tools.push({
|
|
@@ -1786,9 +1801,10 @@ export const ozaiyaPlugin = {
|
|
|
1786
1801
|
resolveAccount: (cfg, accountId) => resolveAccount(cfg, accountId),
|
|
1787
1802
|
defaultAccountId: () => DEFAULT_ACCOUNT_ID,
|
|
1788
1803
|
isConfigured: (account) => {
|
|
1789
|
-
//
|
|
1804
|
+
// The gateway sentinel is only listed when a userToken (user gateway) or a provisionSecret
|
|
1805
|
+
// (fleet node, whose account has no botToken) is set, so being listed means configured.
|
|
1790
1806
|
if (account.accountId === GATEWAY_ACCOUNT_ID) {
|
|
1791
|
-
return
|
|
1807
|
+
return true;
|
|
1792
1808
|
}
|
|
1793
1809
|
// Gateway-loaded bot accounts are always configured
|
|
1794
1810
|
if (gatewayBotAccounts.has(account.accountId)) {
|
|
@@ -1800,7 +1816,7 @@ export const ozaiyaPlugin = {
|
|
|
1800
1816
|
accountId: account.accountId,
|
|
1801
1817
|
enabled: account.enabled,
|
|
1802
1818
|
configured: account.accountId === GATEWAY_ACCOUNT_ID
|
|
1803
|
-
?
|
|
1819
|
+
? true
|
|
1804
1820
|
: Boolean(account.botToken?.trim() && account.botPrivateKey?.trim()),
|
|
1805
1821
|
webhookPath: account.webhookPath,
|
|
1806
1822
|
baseUrl: account.apiBaseUrl,
|
|
@@ -2088,10 +2104,12 @@ export const ozaiyaPlugin = {
|
|
|
2088
2104
|
recordState(botAccount.accountId, { running: false, lastStopAt: Date.now() });
|
|
2089
2105
|
});
|
|
2090
2106
|
ctx.log?.info(`[${botAccount.accountId}] registered webhook at ${botAccount.webhookPath}`);
|
|
2107
|
+
syncMailWatch(botAccount, ctx.cfg, stateDir, ctx.log);
|
|
2091
2108
|
};
|
|
2092
2109
|
const stopBotHandler = (botId) => {
|
|
2093
2110
|
botUnregisters.get(botId)?.();
|
|
2094
2111
|
botUnregisters.delete(botId);
|
|
2112
|
+
stopMailWatch(botId);
|
|
2095
2113
|
gatewayBotAccounts.delete(botId);
|
|
2096
2114
|
};
|
|
2097
2115
|
await startGatewayMode({
|
|
@@ -2168,6 +2186,7 @@ export const ozaiyaPlugin = {
|
|
|
2168
2186
|
groupToActivePhoneCall.clear();
|
|
2169
2187
|
for (const id of gatewayBotAccounts.keys()) {
|
|
2170
2188
|
recordState(id, { running: false, lastStopAt: Date.now() });
|
|
2189
|
+
stopMailWatch(id);
|
|
2171
2190
|
}
|
|
2172
2191
|
gatewayBotAccounts.clear();
|
|
2173
2192
|
recordState(account.accountId, { running: false, lastStopAt: Date.now() });
|
|
@@ -3065,6 +3084,187 @@ function createStartInAppCallTool(account, cfg) {
|
|
|
3065
3084
|
},
|
|
3066
3085
|
};
|
|
3067
3086
|
}
|
|
3087
|
+
/**
|
|
3088
|
+
* Ask the user before an action that can't be undone — paying, placing an order, submitting a
|
|
3089
|
+
* form with their details, posting or sending something in their name. Shows an Approve/Reject
|
|
3090
|
+
* card in the chat and waits for the answer (or the confirmation timeout).
|
|
3091
|
+
*/
|
|
3092
|
+
function createRequestUserApprovalTool(account) {
|
|
3093
|
+
return {
|
|
3094
|
+
label: "Request User Approval",
|
|
3095
|
+
name: "request_user_approval",
|
|
3096
|
+
ownerOnly: false,
|
|
3097
|
+
description: "Ask the user to approve an action BEFORE doing it. Required before paying or placing an order, " +
|
|
3098
|
+
"submitting a form with their personal details, or sending a message, email or post on their behalf. " +
|
|
3099
|
+
"Shows Approve/Reject buttons in the chat and waits up to 5 minutes. Returns APPROVED or REJECTED; " +
|
|
3100
|
+
"only go ahead on APPROVED.",
|
|
3101
|
+
parameters: {
|
|
3102
|
+
type: "object",
|
|
3103
|
+
properties: {
|
|
3104
|
+
groupId: { type: "string", description: "The chat to ask in (the current conversation)." },
|
|
3105
|
+
action: { type: "string", description: "Short name of the action, e.g. \"Pay ¥128 for 2 movie tickets\"." },
|
|
3106
|
+
details: {
|
|
3107
|
+
type: "object",
|
|
3108
|
+
description: "Key facts the user should check, as short label → value pairs (amount, recipient, item, date…).",
|
|
3109
|
+
additionalProperties: { type: "string" },
|
|
3110
|
+
},
|
|
3111
|
+
},
|
|
3112
|
+
required: ["groupId", "action"],
|
|
3113
|
+
},
|
|
3114
|
+
execute: async (_toolCallId, rawArgs) => {
|
|
3115
|
+
const args = rawArgs;
|
|
3116
|
+
const params = {};
|
|
3117
|
+
for (const [key, value] of Object.entries(args.details ?? {})) {
|
|
3118
|
+
if (value !== undefined && value !== null && value !== "")
|
|
3119
|
+
params[key] = String(value).slice(0, 200);
|
|
3120
|
+
}
|
|
3121
|
+
const approved = await requestConfirmation(makeConfirmationDeps(account), args.groupId, "request_user_approval", params, String(args.action ?? "").slice(0, 120) || undefined);
|
|
3122
|
+
return { content: [{ type: "text", text: approved ? "APPROVED" : "REJECTED (or no answer in time) — do not do it." }] };
|
|
3123
|
+
},
|
|
3124
|
+
};
|
|
3125
|
+
}
|
|
3126
|
+
// ─── The bot's own mailbox (email add-on) ───────────────────────────────────
|
|
3127
|
+
/**
|
|
3128
|
+
* The email tool for this bot. Its mailbox may only be looked into from the owner's own chat with
|
|
3129
|
+
* the bot — the chat a message or new-mail turn is running in, when that is the only one running —
|
|
3130
|
+
* and every approval card goes to that chat, whoever asked.
|
|
3131
|
+
*/
|
|
3132
|
+
function createEmailToolFor(account, config) {
|
|
3133
|
+
const ownerGroupId = config.ownerGroupId;
|
|
3134
|
+
return createBotEmailTool(account, config, {
|
|
3135
|
+
inOwnerChat: () => {
|
|
3136
|
+
const running = [activeDispatches.get(account.accountId)?.groupId, mailTurns.get(account.accountId)].filter(Boolean);
|
|
3137
|
+
return !!ownerGroupId && running.length > 0 && running.every((groupId) => groupId === ownerGroupId);
|
|
3138
|
+
},
|
|
3139
|
+
askOwner: async (label, params) => {
|
|
3140
|
+
if (!ownerGroupId)
|
|
3141
|
+
return false;
|
|
3142
|
+
return requestConfirmation(makeConfirmationDeps(account), ownerGroupId, "email", params, label);
|
|
3143
|
+
},
|
|
3144
|
+
});
|
|
3145
|
+
}
|
|
3146
|
+
/**
|
|
3147
|
+
* New mail reached the bot's own mailbox: run a turn in the owner's chat with the bot, so it tells
|
|
3148
|
+
* them and, where it may, answers. The mail's headers come in marked as outside data; the agent
|
|
3149
|
+
* reads the rest with its email tool.
|
|
3150
|
+
*/
|
|
3151
|
+
async function handleNewMail(account, cfg, log, mailbox, mails) {
|
|
3152
|
+
const config = emailAddonOf(account);
|
|
3153
|
+
const groupId = config?.ownerGroupId;
|
|
3154
|
+
if (!config || !groupId)
|
|
3155
|
+
return;
|
|
3156
|
+
const now = Date.now();
|
|
3157
|
+
const recent = (mailTurnTimes.get(account.accountId) ?? []).filter((t) => now - t < 3_600_000);
|
|
3158
|
+
if (recent.length >= MAIL_TURNS_PER_HOUR) {
|
|
3159
|
+
log?.warn?.(`ozaiya: [${account.accountId}] ${mails.length} new email(s) in ${mailbox.email} not announced: over ${MAIL_TURNS_PER_HOUR} new-mail turns this hour`);
|
|
3160
|
+
return;
|
|
3161
|
+
}
|
|
3162
|
+
mailTurnTimes.set(account.accountId, [...recent, now]);
|
|
3163
|
+
recordState(account.accountId, { lastInboundAt: now });
|
|
3164
|
+
await getGroupKeyOrThrow(account, groupId);
|
|
3165
|
+
const ch = getOzaiyaRuntime().channel;
|
|
3166
|
+
const route = ch.routing.resolveAgentRoute({
|
|
3167
|
+
cfg,
|
|
3168
|
+
channel: "ozaiya",
|
|
3169
|
+
accountId: account.accountId,
|
|
3170
|
+
peer: { kind: "group", id: groupId },
|
|
3171
|
+
});
|
|
3172
|
+
const fromAddress = `ozaiya:group:${groupId}`;
|
|
3173
|
+
const conversationLabel = `group:${groupId}`;
|
|
3174
|
+
const storePath = ch.session.resolveStorePath(undefined, { agentId: route.agentId });
|
|
3175
|
+
const notice = newMailNotice(mailbox, mails, config.replyWithoutAsking !== false);
|
|
3176
|
+
const body = ch.reply.formatAgentEnvelope({
|
|
3177
|
+
channel: "Ozaiya",
|
|
3178
|
+
from: `Email to ${mailbox.email} (${conversationLabel})`,
|
|
3179
|
+
timestamp: now,
|
|
3180
|
+
previousTimestamp: ch.session.readSessionUpdatedAt({ storePath, sessionKey: route.sessionKey }),
|
|
3181
|
+
envelope: ch.reply.resolveEnvelopeFormatOptions(cfg),
|
|
3182
|
+
body: notice,
|
|
3183
|
+
});
|
|
3184
|
+
const msgCtx = ch.reply.finalizeInboundContext({
|
|
3185
|
+
GroupSystemPrompt: account.persona,
|
|
3186
|
+
Body: body,
|
|
3187
|
+
BodyForAgent: notice,
|
|
3188
|
+
RawBody: notice,
|
|
3189
|
+
// Mail text never runs as a command.
|
|
3190
|
+
CommandBody: "",
|
|
3191
|
+
From: fromAddress,
|
|
3192
|
+
To: fromAddress,
|
|
3193
|
+
SessionKey: route.sessionKey,
|
|
3194
|
+
AccountId: route.accountId,
|
|
3195
|
+
ChatType: "direct",
|
|
3196
|
+
ConversationLabel: conversationLabel,
|
|
3197
|
+
GroupSubject: groupId,
|
|
3198
|
+
SenderId: "ozaiya-email",
|
|
3199
|
+
SenderName: "Email",
|
|
3200
|
+
Provider: "ozaiya",
|
|
3201
|
+
Surface: "ozaiya",
|
|
3202
|
+
MessageSid: `email-${mailbox.id}-${mails[mails.length - 1]?.uid ?? 0}-${now}`,
|
|
3203
|
+
Timestamp: now,
|
|
3204
|
+
MessageText: notice,
|
|
3205
|
+
CommandAuthorized: false,
|
|
3206
|
+
OriginatingChannel: "ozaiya",
|
|
3207
|
+
OriginatingTo: fromAddress,
|
|
3208
|
+
});
|
|
3209
|
+
void ch.session.recordInboundSession({
|
|
3210
|
+
storePath,
|
|
3211
|
+
sessionKey: route.sessionKey,
|
|
3212
|
+
ctx: msgCtx,
|
|
3213
|
+
onRecordError: (err) => log?.warn?.(`ozaiya: failed recording new-mail session: ${String(err)}`),
|
|
3214
|
+
}).catch((err) => log?.warn?.(`ozaiya: failed recording new-mail session: ${String(err)}`));
|
|
3215
|
+
mailTurns.set(account.accountId, groupId);
|
|
3216
|
+
try {
|
|
3217
|
+
await ch.reply.dispatchReplyWithBufferedBlockDispatcher({
|
|
3218
|
+
ctx: msgCtx,
|
|
3219
|
+
cfg,
|
|
3220
|
+
dispatcherOptions: {
|
|
3221
|
+
deliver: async (replyPayload, _info) => {
|
|
3222
|
+
const replyText = replyPayload.text;
|
|
3223
|
+
if (!replyText?.trim())
|
|
3224
|
+
return;
|
|
3225
|
+
await sendEncryptedChatContent({ account, groupId, content: { text: replyText }, log });
|
|
3226
|
+
},
|
|
3227
|
+
onError: (err) => log?.warn?.(`ozaiya: new-mail turn error: ${String(err)}`),
|
|
3228
|
+
},
|
|
3229
|
+
replyOptions: account.model ? { isHeartbeat: true, heartbeatModelOverride: account.model } : undefined,
|
|
3230
|
+
});
|
|
3231
|
+
}
|
|
3232
|
+
finally {
|
|
3233
|
+
mailTurns.delete(account.accountId);
|
|
3234
|
+
}
|
|
3235
|
+
}
|
|
3236
|
+
/**
|
|
3237
|
+
* Start, restart or stop a bot's mailbox watch to match its email add-on (gateway mode). A reload
|
|
3238
|
+
* that leaves the mailboxes and the owner's chat as they were keeps the running watch.
|
|
3239
|
+
*/
|
|
3240
|
+
function syncMailWatch(account, cfg, stateDir, log) {
|
|
3241
|
+
const config = emailAddonOf(account);
|
|
3242
|
+
const signature = config?.ownerGroupId ? JSON.stringify([config.accounts, config.ownerGroupId]) : "";
|
|
3243
|
+
const running = mailWatches.get(account.accountId);
|
|
3244
|
+
if (running?.signature === signature)
|
|
3245
|
+
return;
|
|
3246
|
+
stopMailWatch(account.accountId);
|
|
3247
|
+
if (!signature)
|
|
3248
|
+
return;
|
|
3249
|
+
const botId = account.accountId;
|
|
3250
|
+
const stop = watchMailboxes(account, {
|
|
3251
|
+
stateDir,
|
|
3252
|
+
log: { info: (msg) => log?.info?.(msg), warn: (msg) => log?.warn?.(msg) },
|
|
3253
|
+
onNewMail: (mailbox, mails) => {
|
|
3254
|
+
// One new-mail turn at a time per bot, with the bot's config as it is by then.
|
|
3255
|
+
const next = (mailTurnQueues.get(botId) ?? Promise.resolve())
|
|
3256
|
+
.then(() => handleNewMail(gatewayBotAccounts.get(botId) ?? account, cfg, log, mailbox, mails))
|
|
3257
|
+
.catch((err) => log?.warn?.(`ozaiya: [${botId}] new-mail turn failed: ${String(err)}`));
|
|
3258
|
+
mailTurnQueues.set(botId, next);
|
|
3259
|
+
return next;
|
|
3260
|
+
},
|
|
3261
|
+
});
|
|
3262
|
+
mailWatches.set(botId, { signature, stop });
|
|
3263
|
+
}
|
|
3264
|
+
function stopMailWatch(botId) {
|
|
3265
|
+
mailWatches.get(botId)?.stop();
|
|
3266
|
+
mailWatches.delete(botId);
|
|
3267
|
+
}
|
|
3068
3268
|
function createMakePhoneCallTool(account, cfg) {
|
|
3069
3269
|
return {
|
|
3070
3270
|
label: "Make Phone Call",
|