@elizaos/plugin-line 2.0.0-alpha.7 → 2.0.3-beta.2

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 (51) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +185 -0
  3. package/package.json +28 -12
  4. package/dist/accounts.d.ts +0 -152
  5. package/dist/accounts.d.ts.map +0 -1
  6. package/dist/accounts.js +0 -258
  7. package/dist/accounts.js.map +0 -1
  8. package/dist/actions/index.d.ts +0 -7
  9. package/dist/actions/index.d.ts.map +0 -1
  10. package/dist/actions/index.js +0 -7
  11. package/dist/actions/index.js.map +0 -1
  12. package/dist/actions/sendFlexMessage.d.ts +0 -6
  13. package/dist/actions/sendFlexMessage.d.ts.map +0 -1
  14. package/dist/actions/sendFlexMessage.js +0 -204
  15. package/dist/actions/sendFlexMessage.js.map +0 -1
  16. package/dist/actions/sendLocation.d.ts +0 -6
  17. package/dist/actions/sendLocation.d.ts.map +0 -1
  18. package/dist/actions/sendLocation.js +0 -181
  19. package/dist/actions/sendLocation.js.map +0 -1
  20. package/dist/actions/sendMessage.d.ts +0 -6
  21. package/dist/actions/sendMessage.d.ts.map +0 -1
  22. package/dist/actions/sendMessage.js +0 -172
  23. package/dist/actions/sendMessage.js.map +0 -1
  24. package/dist/index.d.ts +0 -22
  25. package/dist/index.d.ts.map +0 -1
  26. package/dist/index.js +0 -49
  27. package/dist/index.js.map +0 -1
  28. package/dist/messaging.d.ts +0 -142
  29. package/dist/messaging.d.ts.map +0 -1
  30. package/dist/messaging.js +0 -357
  31. package/dist/messaging.js.map +0 -1
  32. package/dist/providers/chatContext.d.ts +0 -6
  33. package/dist/providers/chatContext.d.ts.map +0 -1
  34. package/dist/providers/chatContext.js +0 -86
  35. package/dist/providers/chatContext.js.map +0 -1
  36. package/dist/providers/index.d.ts +0 -6
  37. package/dist/providers/index.d.ts.map +0 -1
  38. package/dist/providers/index.js +0 -6
  39. package/dist/providers/index.js.map +0 -1
  40. package/dist/providers/userContext.d.ts +0 -6
  41. package/dist/providers/userContext.d.ts.map +0 -1
  42. package/dist/providers/userContext.js +0 -71
  43. package/dist/providers/userContext.js.map +0 -1
  44. package/dist/service.d.ts +0 -102
  45. package/dist/service.d.ts.map +0 -1
  46. package/dist/service.js +0 -433
  47. package/dist/service.js.map +0 -1
  48. package/dist/types.d.ts +0 -279
  49. package/dist/types.d.ts.map +0 -1
  50. package/dist/types.js +0 -106
  51. package/dist/types.js.map +0 -1
package/dist/accounts.js DELETED
@@ -1,258 +0,0 @@
1
- /**
2
- * Default account identifier used when no specific account is configured
3
- */
4
- export const DEFAULT_ACCOUNT_ID = "default";
5
- /**
6
- * Normalizes an account ID, returning the default if not provided
7
- */
8
- export function normalizeAccountId(accountId) {
9
- if (!accountId || typeof accountId !== "string") {
10
- return DEFAULT_ACCOUNT_ID;
11
- }
12
- const trimmed = accountId.trim().toLowerCase();
13
- if (!trimmed || trimmed === "default") {
14
- return DEFAULT_ACCOUNT_ID;
15
- }
16
- return trimmed;
17
- }
18
- /**
19
- * Gets the multi-account configuration from runtime settings
20
- */
21
- export function getMultiAccountConfig(runtime) {
22
- const characterLine = runtime.character?.settings?.line;
23
- return {
24
- enabled: characterLine?.enabled,
25
- channelAccessToken: characterLine?.channelAccessToken,
26
- channelSecret: characterLine?.channelSecret,
27
- tokenFile: characterLine?.tokenFile,
28
- secretFile: characterLine?.secretFile,
29
- dmPolicy: characterLine?.dmPolicy,
30
- groupPolicy: characterLine?.groupPolicy,
31
- mediaMaxMb: characterLine?.mediaMaxMb,
32
- webhookPath: characterLine?.webhookPath,
33
- accounts: characterLine?.accounts,
34
- groups: characterLine?.groups,
35
- };
36
- }
37
- /**
38
- * Lists all configured account IDs
39
- */
40
- export function listLineAccountIds(runtime) {
41
- const config = getMultiAccountConfig(runtime);
42
- const accounts = config.accounts;
43
- const ids = new Set();
44
- // Add default account if configured at base level
45
- const envToken = runtime.getSetting("LINE_CHANNEL_ACCESS_TOKEN");
46
- if (config.channelAccessToken?.trim() || config.tokenFile || envToken?.trim()) {
47
- ids.add(DEFAULT_ACCOUNT_ID);
48
- }
49
- // Add named accounts
50
- if (accounts && typeof accounts === "object") {
51
- for (const id of Object.keys(accounts)) {
52
- if (id) {
53
- ids.add(id);
54
- }
55
- }
56
- }
57
- const result = Array.from(ids);
58
- if (result.length === 0) {
59
- return [DEFAULT_ACCOUNT_ID];
60
- }
61
- return result.slice().sort((a, b) => a.localeCompare(b));
62
- }
63
- /**
64
- * Resolves the default account ID to use
65
- */
66
- export function resolveDefaultLineAccountId(runtime) {
67
- const ids = listLineAccountIds(runtime);
68
- if (ids.includes(DEFAULT_ACCOUNT_ID)) {
69
- return DEFAULT_ACCOUNT_ID;
70
- }
71
- return ids[0] ?? DEFAULT_ACCOUNT_ID;
72
- }
73
- /**
74
- * Gets the account-specific configuration
75
- */
76
- function getAccountConfig(runtime, accountId) {
77
- const config = getMultiAccountConfig(runtime);
78
- const accounts = config.accounts;
79
- if (!accounts || typeof accounts !== "object") {
80
- return undefined;
81
- }
82
- return accounts[accountId];
83
- }
84
- /**
85
- * Resolves the channel access token for a LINE account
86
- */
87
- export function resolveLineToken(runtime, accountId) {
88
- const multiConfig = getMultiAccountConfig(runtime);
89
- const accountConfig = getAccountConfig(runtime, accountId);
90
- // Check account-level config first
91
- if (accountConfig?.channelAccessToken?.trim()) {
92
- return { token: accountConfig.channelAccessToken.trim(), source: "config" };
93
- }
94
- // For default account, check base config
95
- if (accountId === DEFAULT_ACCOUNT_ID) {
96
- if (multiConfig.channelAccessToken?.trim()) {
97
- return { token: multiConfig.channelAccessToken.trim(), source: "config" };
98
- }
99
- // Check environment/runtime settings
100
- const envToken = runtime.getSetting("LINE_CHANNEL_ACCESS_TOKEN");
101
- if (envToken?.trim()) {
102
- return { token: envToken.trim(), source: "env" };
103
- }
104
- }
105
- return { token: "", source: "none" };
106
- }
107
- /**
108
- * Resolves the channel secret for a LINE account
109
- */
110
- export function resolveLineSecret(runtime, accountId) {
111
- const multiConfig = getMultiAccountConfig(runtime);
112
- const accountConfig = getAccountConfig(runtime, accountId);
113
- // Check account-level config first
114
- if (accountConfig?.channelSecret?.trim()) {
115
- return accountConfig.channelSecret.trim();
116
- }
117
- // For default account, check base config and env
118
- if (accountId === DEFAULT_ACCOUNT_ID) {
119
- if (multiConfig.channelSecret?.trim()) {
120
- return multiConfig.channelSecret.trim();
121
- }
122
- const envSecret = runtime.getSetting("LINE_CHANNEL_SECRET");
123
- if (envSecret?.trim()) {
124
- return envSecret.trim();
125
- }
126
- }
127
- return "";
128
- }
129
- /**
130
- * Merges base configuration with account-specific overrides
131
- */
132
- /**
133
- * Removes undefined values from an object to prevent them from overwriting during spread
134
- */
135
- function filterDefined(obj) {
136
- return Object.fromEntries(Object.entries(obj).filter(([, v]) => v !== undefined));
137
- }
138
- function mergeLineAccountConfig(runtime, accountId) {
139
- const multiConfig = getMultiAccountConfig(runtime);
140
- const { accounts: _ignored, ...baseConfig } = multiConfig;
141
- const accountConfig = getAccountConfig(runtime, accountId) ?? {};
142
- // Get environment/runtime settings for the base config
143
- const envDmPolicy = runtime.getSetting("LINE_DM_POLICY");
144
- const envGroupPolicy = runtime.getSetting("LINE_GROUP_POLICY");
145
- const envConfig = {
146
- dmPolicy: envDmPolicy,
147
- groupPolicy: envGroupPolicy,
148
- };
149
- // Merge order: env defaults < base config < account config
150
- // Filter undefined values to prevent them from overwriting defined values
151
- return {
152
- ...filterDefined(envConfig),
153
- ...filterDefined(baseConfig),
154
- ...filterDefined(accountConfig),
155
- };
156
- }
157
- /**
158
- * Resolves a complete LINE account configuration
159
- */
160
- export function resolveLineAccount(runtime, accountId) {
161
- const normalizedAccountId = normalizeAccountId(accountId);
162
- const multiConfig = getMultiAccountConfig(runtime);
163
- const baseEnabled = multiConfig.enabled !== false;
164
- const merged = mergeLineAccountConfig(runtime, normalizedAccountId);
165
- const accountEnabled = merged.enabled !== false;
166
- const enabled = baseEnabled && accountEnabled;
167
- const { token, source: tokenSource } = resolveLineToken(runtime, normalizedAccountId);
168
- const secret = resolveLineSecret(runtime, normalizedAccountId);
169
- // Determine if this account is actually configured
170
- const configured = Boolean(token || secret);
171
- return {
172
- accountId: normalizedAccountId,
173
- enabled,
174
- name: merged.name?.trim() || undefined,
175
- channelAccessToken: token,
176
- channelSecret: secret,
177
- tokenSource,
178
- configured,
179
- config: merged,
180
- };
181
- }
182
- /**
183
- * Lists all enabled LINE accounts
184
- */
185
- export function listEnabledLineAccounts(runtime) {
186
- return listLineAccountIds(runtime)
187
- .map((accountId) => resolveLineAccount(runtime, accountId))
188
- .filter((account) => account.enabled && account.configured);
189
- }
190
- /**
191
- * Checks if multi-account mode is enabled
192
- */
193
- export function isMultiAccountEnabled(runtime) {
194
- const accounts = listEnabledLineAccounts(runtime);
195
- return accounts.length > 1;
196
- }
197
- /**
198
- * Resolves group configuration for a specific group
199
- */
200
- export function resolveLineGroupConfig(runtime, accountId, groupId) {
201
- const multiConfig = getMultiAccountConfig(runtime);
202
- const accountConfig = getAccountConfig(runtime, accountId);
203
- // Check account-level groups first
204
- const accountGroup = accountConfig?.groups?.[groupId];
205
- if (accountGroup) {
206
- return accountGroup;
207
- }
208
- // Fall back to base-level groups
209
- return multiConfig.groups?.[groupId];
210
- }
211
- /**
212
- * Checks if a user is allowed based on policy and allowlist
213
- */
214
- export function isLineUserAllowed(params) {
215
- const { userId, accountConfig, isGroup, groupConfig } = params;
216
- if (isGroup) {
217
- const policy = accountConfig.groupPolicy ?? "allowlist";
218
- if (policy === "disabled") {
219
- return false;
220
- }
221
- if (policy === "open") {
222
- return true;
223
- }
224
- // Check group-specific allowlist first
225
- if (groupConfig?.allowFrom?.length) {
226
- return groupConfig.allowFrom.some((allowed) => String(allowed) === userId);
227
- }
228
- // Check account-level group allowlist
229
- if (accountConfig.groupAllowFrom?.length) {
230
- return accountConfig.groupAllowFrom.some((allowed) => String(allowed) === userId);
231
- }
232
- return policy !== "allowlist";
233
- }
234
- // DM handling
235
- const policy = accountConfig.dmPolicy ?? "pairing";
236
- if (policy === "disabled") {
237
- return false;
238
- }
239
- if (policy === "open") {
240
- return true;
241
- }
242
- if (policy === "pairing") {
243
- return true;
244
- }
245
- // Allowlist policy
246
- if (accountConfig.allowFrom?.length) {
247
- return accountConfig.allowFrom.some((allowed) => String(allowed) === userId);
248
- }
249
- return false;
250
- }
251
- /**
252
- * Checks if mention is required in a group
253
- */
254
- export function isLineMentionRequired(params) {
255
- const { groupConfig } = params;
256
- return groupConfig?.requireMention ?? false;
257
- }
258
- //# sourceMappingURL=accounts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /**
2
- * LINE plugin actions.
3
- */
4
- export { sendFlexMessage } from "./sendFlexMessage.js";
5
- export { sendLocation } from "./sendLocation.js";
6
- export { sendMessage } from "./sendMessage.js";
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * LINE plugin actions.
3
- */
4
- export { sendFlexMessage } from "./sendFlexMessage.js";
5
- export { sendLocation } from "./sendLocation.js";
6
- export { sendMessage } from "./sendMessage.js";
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Send flex message action for the LINE plugin.
3
- */
4
- import type { Action } from "@elizaos/core";
5
- export declare const sendFlexMessage: Action;
6
- //# sourceMappingURL=sendFlexMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sendFlexMessage.d.ts","sourceRoot":"","sources":["../../src/actions/sendFlexMessage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AAwEvB,eAAO,MAAM,eAAe,EAAE,MAkL7B,CAAC"}
@@ -1,204 +0,0 @@
1
- /**
2
- * Send flex message action for the LINE plugin.
3
- */
4
- import { composePromptFromState, logger, ModelType, parseJSONObjectFromText } from "@elizaos/core";
5
- import { isValidLineId, LINE_SERVICE_NAME, normalizeLineTarget, } from "../types.js";
6
- const SEND_FLEX_TEMPLATE = `# Task: Extract LINE Flex message parameters
7
-
8
- Based on the conversation, determine the flex message content to send.
9
-
10
- Recent conversation:
11
- {{recentMessages}}
12
-
13
- Extract the following:
14
- 1. altText: Alternative text for notifications (short summary)
15
- 2. title: Card title
16
- 3. body: Card body text
17
- 4. to: The target user/group/room ID (or "current" to reply to the current chat)
18
- 5. cardType: Type of card (info, image, action, list)
19
-
20
- Respond with a JSON object:
21
- \`\`\`json
22
- {
23
- "altText": "notification text",
24
- "title": "Card Title",
25
- "body": "Card body text",
26
- "to": "target ID or 'current'",
27
- "cardType": "info"
28
- }
29
- \`\`\`
30
- `;
31
- /**
32
- * Create a simple info card bubble
33
- */
34
- function createInfoBubble(title, body) {
35
- return {
36
- type: "bubble",
37
- body: {
38
- type: "box",
39
- layout: "vertical",
40
- contents: [
41
- {
42
- type: "text",
43
- text: title,
44
- weight: "bold",
45
- size: "xl",
46
- wrap: true,
47
- },
48
- {
49
- type: "text",
50
- text: body,
51
- margin: "md",
52
- wrap: true,
53
- },
54
- ],
55
- },
56
- };
57
- }
58
- export const sendFlexMessage = {
59
- name: "LINE_SEND_FLEX_MESSAGE",
60
- similes: ["SEND_LINE_CARD", "LINE_FLEX", "LINE_CARD", "SEND_LINE_FLEX"],
61
- description: "Send a rich flex message/card via LINE",
62
- validate: async (runtime, message, state, options) => {
63
- const __avTextRaw = typeof message?.content?.text === "string" ? message.content.text : "";
64
- const __avText = __avTextRaw.toLowerCase();
65
- const __avKeywords = ["line", "send", "flex", "message"];
66
- const __avKeywordOk = __avKeywords.length > 0 && __avKeywords.some((kw) => kw.length > 0 && __avText.includes(kw));
67
- const __avRegex = /\b(?:line|send|flex|message)\b/i;
68
- const __avRegexOk = __avRegex.test(__avText);
69
- const __avSource = String(message?.content?.source ?? message?.source ?? "");
70
- const __avExpectedSource = "line";
71
- const __avSourceOk = __avExpectedSource
72
- ? __avSource === __avExpectedSource
73
- : Boolean(__avSource || state || runtime?.agentId || runtime?.getService);
74
- const __avOptions = options && typeof options === "object" ? options : {};
75
- const __avInputOk = __avText.trim().length > 0 ||
76
- Object.keys(__avOptions).length > 0 ||
77
- Boolean(message?.content && typeof message.content === "object");
78
- if (!(__avKeywordOk && __avRegexOk && __avSourceOk && __avInputOk)) {
79
- return false;
80
- }
81
- const __avLegacyValidate = async (_runtime, message, _state) => {
82
- return message.content.source === "line";
83
- };
84
- try {
85
- return Boolean(await __avLegacyValidate(runtime, message, state, options));
86
- }
87
- catch {
88
- return false;
89
- }
90
- },
91
- handler: async (runtime, message, state, _options, callback) => {
92
- const lineService = runtime.getService(LINE_SERVICE_NAME);
93
- if (!lineService || !lineService.isConnected()) {
94
- if (callback) {
95
- callback({ text: "LINE service is not available.", source: "line" });
96
- }
97
- return { success: false, error: "LINE service not available" };
98
- }
99
- const currentState = state ?? (await runtime.composeState(message));
100
- const prompt = composePromptFromState({
101
- template: SEND_FLEX_TEMPLATE,
102
- state: currentState,
103
- });
104
- let flexInfo = null;
105
- for (let attempt = 0; attempt < 3; attempt++) {
106
- const response = await runtime.useModel(ModelType.TEXT_SMALL, {
107
- prompt,
108
- });
109
- const parsed = parseJSONObjectFromText(response);
110
- if (parsed?.title && parsed?.body) {
111
- flexInfo = {
112
- altText: String(parsed.altText || `${parsed.title}: ${parsed.body}`),
113
- title: String(parsed.title),
114
- body: String(parsed.body),
115
- to: String(parsed.to || "current"),
116
- cardType: String(parsed.cardType || "info"),
117
- };
118
- break;
119
- }
120
- }
121
- if (!flexInfo || !flexInfo.title) {
122
- if (callback) {
123
- callback({
124
- text: "I couldn't understand the flex message content. Please try again.",
125
- source: "line",
126
- });
127
- }
128
- return {
129
- success: false,
130
- error: "Could not extract flex message parameters",
131
- };
132
- }
133
- // Determine target
134
- let targetId;
135
- if (flexInfo.to && flexInfo.to !== "current") {
136
- const normalized = normalizeLineTarget(flexInfo.to);
137
- if (normalized && isValidLineId(normalized)) {
138
- targetId = normalized;
139
- }
140
- }
141
- // Fall back to current chat
142
- if (!targetId) {
143
- const stateData = (currentState.data || {});
144
- targetId =
145
- stateData.groupId ||
146
- stateData.roomId ||
147
- stateData.userId;
148
- }
149
- if (!targetId) {
150
- if (callback) {
151
- callback({
152
- text: "I couldn't determine where to send the message. Please specify a target.",
153
- source: "line",
154
- });
155
- }
156
- return { success: false, error: "Could not determine target" };
157
- }
158
- // Create flex message
159
- const flexMessage = {
160
- altText: flexInfo.altText.slice(0, 400),
161
- contents: createInfoBubble(flexInfo.title, flexInfo.body),
162
- };
163
- // Send message
164
- const result = await lineService.sendFlexMessage(targetId, flexMessage);
165
- if (!result.success) {
166
- if (callback) {
167
- callback({
168
- text: `Failed to send flex message: ${result.error}`,
169
- source: "line",
170
- });
171
- }
172
- return { success: false, error: result.error };
173
- }
174
- logger.debug(`Sent LINE flex message to ${targetId}`);
175
- if (callback) {
176
- callback({
177
- text: "Card message sent successfully.",
178
- source: message.content.source,
179
- });
180
- }
181
- return {
182
- success: true,
183
- text: "Card message sent successfully",
184
- };
185
- },
186
- examples: [
187
- [
188
- {
189
- name: "{{user1}}",
190
- content: {
191
- text: "Send them an info card with title 'Update' and body 'New features are available'",
192
- },
193
- },
194
- {
195
- name: "{{agent}}",
196
- content: {
197
- text: "I'll send that as a card message.",
198
- actions: ["LINE_SEND_FLEX_MESSAGE"],
199
- },
200
- },
201
- ],
202
- ],
203
- };
204
- //# sourceMappingURL=sendFlexMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sendFlexMessage.js","sourceRoot":"","sources":["../../src/actions/sendFlexMessage.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Send location action for the LINE plugin.
3
- */
4
- import type { Action } from "@elizaos/core";
5
- export declare const sendLocation: Action;
6
- //# sourceMappingURL=sendLocation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sendLocation.d.ts","sourceRoot":"","sources":["../../src/actions/sendLocation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AA4CvB,eAAO,MAAM,YAAY,EAAE,MAwL1B,CAAC"}