@elizaos/plugin-line 2.0.0-alpha.7 → 2.0.0-beta.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.
Files changed (46) hide show
  1. package/README.md +185 -0
  2. package/dist/actions/index.d.ts +0 -6
  3. package/dist/actions/index.d.ts.map +1 -1
  4. package/dist/actions/index.js +2 -6
  5. package/dist/actions/index.js.map +1 -1
  6. package/dist/connector-account-provider.d.ts +16 -0
  7. package/dist/connector-account-provider.d.ts.map +1 -0
  8. package/dist/connector-account-provider.js +82 -0
  9. package/dist/connector-account-provider.js.map +1 -0
  10. package/dist/index.d.ts +2 -6
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +23 -12
  13. package/dist/index.js.map +1 -1
  14. package/dist/providers/index.d.ts +3 -2
  15. package/dist/providers/index.d.ts.map +1 -1
  16. package/dist/providers/index.js +4 -2
  17. package/dist/providers/index.js.map +1 -1
  18. package/dist/service.d.ts +10 -2
  19. package/dist/service.d.ts.map +1 -1
  20. package/dist/service.js +347 -14
  21. package/dist/service.js.map +1 -1
  22. package/dist/workflow-credential-provider.d.ts +21 -0
  23. package/dist/workflow-credential-provider.d.ts.map +1 -0
  24. package/dist/workflow-credential-provider.js +32 -0
  25. package/dist/workflow-credential-provider.js.map +1 -0
  26. package/package.json +10 -10
  27. package/dist/actions/sendFlexMessage.d.ts +0 -6
  28. package/dist/actions/sendFlexMessage.d.ts.map +0 -1
  29. package/dist/actions/sendFlexMessage.js +0 -204
  30. package/dist/actions/sendFlexMessage.js.map +0 -1
  31. package/dist/actions/sendLocation.d.ts +0 -6
  32. package/dist/actions/sendLocation.d.ts.map +0 -1
  33. package/dist/actions/sendLocation.js +0 -181
  34. package/dist/actions/sendLocation.js.map +0 -1
  35. package/dist/actions/sendMessage.d.ts +0 -6
  36. package/dist/actions/sendMessage.d.ts.map +0 -1
  37. package/dist/actions/sendMessage.js +0 -172
  38. package/dist/actions/sendMessage.js.map +0 -1
  39. package/dist/providers/chatContext.d.ts +0 -6
  40. package/dist/providers/chatContext.d.ts.map +0 -1
  41. package/dist/providers/chatContext.js +0 -86
  42. package/dist/providers/chatContext.js.map +0 -1
  43. package/dist/providers/userContext.d.ts +0 -6
  44. package/dist/providers/userContext.d.ts.map +0 -1
  45. package/dist/providers/userContext.js +0 -71
  46. package/dist/providers/userContext.js.map +0 -1
package/README.md ADDED
@@ -0,0 +1,185 @@
1
+ # @elizaos/plugin-line
2
+
3
+ LINE Messaging API plugin for ElizaOS agents. Enables chatbot integration with LINE, a popular messaging platform in Japan, Taiwan, and Thailand.
4
+
5
+ ## Features
6
+
7
+ - **Text Messages**: Send and receive text messages
8
+ - **Rich Messages (Flex)**: Create visually rich card messages
9
+ - **Location Messages**: Share locations with map pins
10
+ - **Quick Replies**: Provide suggested reply options
11
+ - **Group/Room Support**: Operate in groups and multi-user rooms
12
+ - **User Profiles**: Access user display names, pictures, and language
13
+ - **Webhook Integration**: Receive messages via LINE webhooks
14
+
15
+ ## Installation
16
+
17
+ ```bash
18
+ # npm
19
+ npm install @elizaos/plugin-line
20
+
21
+ # bun
22
+ bun add @elizaos/plugin-line
23
+ ```
24
+
25
+ ## Configuration
26
+
27
+ ### Environment Variables
28
+
29
+ | Variable | Description | Required |
30
+ |----------|-------------|----------|
31
+ | `LINE_CHANNEL_ACCESS_TOKEN` | Channel access token from LINE Developers Console | Yes |
32
+ | `LINE_CHANNEL_SECRET` | Channel secret for webhook verification | Yes |
33
+ | `LINE_WEBHOOK_PATH` | Webhook endpoint path | No |
34
+ | `LINE_DM_POLICY` | DM policy: open, pairing, allowlist, disabled | No |
35
+ | `LINE_GROUP_POLICY` | Group policy: open, allowlist, disabled | No |
36
+ | `LINE_ALLOW_FROM` | Comma-separated user IDs for allowlist | No |
37
+ | `LINE_ENABLED` | Enable/disable the plugin | No |
38
+
39
+ ### Agent Configuration
40
+
41
+ ```json
42
+ {
43
+ "plugins": ["@elizaos/plugin-line"],
44
+ "pluginParameters": {
45
+ "LINE_CHANNEL_ACCESS_TOKEN": "your-channel-access-token",
46
+ "LINE_CHANNEL_SECRET": "your-channel-secret",
47
+ "LINE_DM_POLICY": "pairing",
48
+ "LINE_GROUP_POLICY": "allowlist"
49
+ }
50
+ }
51
+ ```
52
+
53
+ ## Setup
54
+
55
+ 1. Create a LINE Developers account at https://developers.line.biz/
56
+ 2. Create a new Messaging API channel
57
+ 3. Get your Channel Access Token (issue a long-lived token)
58
+ 4. Get your Channel Secret
59
+ 5. Set up webhook URL pointing to your server
60
+
61
+ ## Usage
62
+
63
+ ### Actions
64
+
65
+ LINE messaging routes through the canonical `MESSAGE` action using
66
+ `source: "line"`.
67
+
68
+ | Primary action | Operation | Description |
69
+ |----------------|-----------|-------------|
70
+ | `MESSAGE` | `send` | Send text, flex, or location content to a user, group, or room |
71
+ | `MESSAGE` | `read_channel` | Read recent LINE conversation history when available |
72
+ | `MESSAGE` | `list_channels` | List recent LINE targets when available |
73
+
74
+ ### Providers
75
+
76
+ LINE does not register standalone planner providers. Chat and user context is
77
+ exposed through the LINE message connector hooks.
78
+
79
+ ## LINE ID Formats
80
+
81
+ - **User IDs**: Start with `U` followed by 32 hex characters (e.g., `U1234567890abcdef1234567890abcdef`)
82
+ - **Group IDs**: Start with `C` followed by 32 hex characters
83
+ - **Room IDs**: Start with `R` followed by 32 hex characters
84
+
85
+ ## Message Limits
86
+
87
+ - Text messages: 5000 characters max
88
+ - Alt text (for flex/template): 400 characters max
89
+ - Location title/address: 100 characters max
90
+ - Messages per push: 5 max (batched automatically)
91
+
92
+ ## Webhook Setup
93
+
94
+ 1. Configure your webhook URL in the LINE Developers Console
95
+ 2. Ensure your server verifies webhook signatures using the channel secret
96
+ 3. The plugin provides middleware for Express-style webhook handling
97
+
98
+ ```typescript
99
+ import { LineService } from "@elizaos/plugin-line";
100
+
101
+ // Get the middleware
102
+ const middleware = lineService.createMiddleware();
103
+
104
+ // Use with Express
105
+ app.post("/webhooks/line", middleware, async (req, res) => {
106
+ const events = req.body.events;
107
+ await lineService.handleWebhookEvents(events);
108
+ res.status(200).end();
109
+ });
110
+ ```
111
+
112
+ ## Flex Messages
113
+
114
+ LINE Flex Messages allow rich visual content. The plugin supports creating info card bubbles:
115
+
116
+ ```typescript
117
+ const flexMessage = {
118
+ altText: "Update Notification",
119
+ contents: {
120
+ type: "bubble",
121
+ body: {
122
+ type: "box",
123
+ layout: "vertical",
124
+ contents: [
125
+ { type: "text", text: "Title", weight: "bold", size: "xl" },
126
+ { type: "text", text: "Body content", margin: "md", wrap: true }
127
+ ]
128
+ }
129
+ }
130
+ };
131
+ ```
132
+
133
+ ## Security Policies
134
+
135
+ ### DM Policies
136
+
137
+ | Policy | Description |
138
+ |--------|-------------|
139
+ | `open` | Accept DMs from anyone |
140
+ | `pairing` | Accept DMs and remember senders |
141
+ | `allowlist` | Only accept from LINE_ALLOW_FROM list |
142
+ | `disabled` | Don't accept any DMs |
143
+
144
+ ### Group Policies
145
+
146
+ | Policy | Description |
147
+ |--------|-------------|
148
+ | `open` | Respond to anyone in groups |
149
+ | `allowlist` | Only respond to allowed users |
150
+ | `disabled` | Don't respond in groups |
151
+
152
+ ## Development
153
+
154
+ ### Building
155
+
156
+ ```bash
157
+ cd typescript && npm run build
158
+ ```
159
+
160
+ ### Testing
161
+
162
+ ```bash
163
+ npm test
164
+ ```
165
+
166
+ ## API Reference
167
+
168
+ ### LineService
169
+
170
+ #### Methods
171
+
172
+ - `isConnected()`: Check connection status
173
+ - `getBotInfo()`: Get bot profile
174
+ - `sendMessage(to, text, options?)`: Send text message
175
+ - `sendFlexMessage(to, flex)`: Send flex message
176
+ - `sendTemplateMessage(to, template)`: Send template message
177
+ - `sendLocationMessage(to, location)`: Send location
178
+ - `replyMessage(replyToken, messages)`: Reply using token
179
+ - `getUserProfile(userId)`: Get user profile
180
+ - `getGroupInfo(groupId)`: Get group info
181
+ - `leaveChat(chatId, chatType)`: Leave group/room
182
+
183
+ ## License
184
+
185
+ MIT
@@ -1,7 +1 @@
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
1
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
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
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":""}
@@ -1,7 +1,3 @@
1
- /**
2
- * LINE plugin actions.
3
- */
4
- export { sendFlexMessage } from "./sendFlexMessage.js";
5
- export { sendLocation } from "./sendLocation.js";
6
- export { sendMessage } from "./sendMessage.js";
1
+ "use strict";
2
+ // LINE messaging routes through MESSAGE connector hooks.
7
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
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
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":";AAAA,yDAAyD"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * LINE ConnectorAccountManager provider.
3
+ *
4
+ * Adapts the existing multi-account scaffolding in `accounts.ts` to the
5
+ * `ConnectorAccountProvider` contract from
6
+ * `@elizaos/core/connectors/account-manager`.
7
+ *
8
+ * Source of truth for accounts is character settings (`character.settings.line`)
9
+ * plus env-var fallbacks (LINE_CHANNEL_ACCESS_TOKEN, LINE_CHANNEL_SECRET).
10
+ * `listAccounts` enumerates all configured/enabled accounts; single-account
11
+ * env-only deployments still surface as a `default` account.
12
+ */
13
+ import type { ConnectorAccountProvider, IAgentRuntime } from "@elizaos/core";
14
+ export declare const LINE_PROVIDER_ID = "line";
15
+ export declare function createLineConnectorAccountProvider(runtime: IAgentRuntime): ConnectorAccountProvider;
16
+ //# sourceMappingURL=connector-account-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector-account-provider.d.ts","sourceRoot":"","sources":["../src/connector-account-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAIV,wBAAwB,EACxB,aAAa,EACd,MAAM,eAAe,CAAC;AASvB,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAsCvC,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,aAAa,GACrB,wBAAwB,CAoC1B"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * LINE ConnectorAccountManager provider.
3
+ *
4
+ * Adapts the existing multi-account scaffolding in `accounts.ts` to the
5
+ * `ConnectorAccountProvider` contract from
6
+ * `@elizaos/core/connectors/account-manager`.
7
+ *
8
+ * Source of truth for accounts is character settings (`character.settings.line`)
9
+ * plus env-var fallbacks (LINE_CHANNEL_ACCESS_TOKEN, LINE_CHANNEL_SECRET).
10
+ * `listAccounts` enumerates all configured/enabled accounts; single-account
11
+ * env-only deployments still surface as a `default` account.
12
+ */
13
+ import { DEFAULT_ACCOUNT_ID, listEnabledLineAccounts, normalizeAccountId, resolveLineAccount, } from "./accounts.js";
14
+ export const LINE_PROVIDER_ID = "line";
15
+ function purposeForAccount(_account) {
16
+ return ["messaging"];
17
+ }
18
+ function accessGateForAccount(account) {
19
+ const dmPolicy = account.config?.dmPolicy;
20
+ if (dmPolicy === "pairing")
21
+ return "pairing";
22
+ if (dmPolicy === "disabled")
23
+ return "disabled";
24
+ return "open";
25
+ }
26
+ function roleForAccount(_account) {
27
+ // LINE channel access tokens are bot tokens, not user-OAuth.
28
+ return "AGENT";
29
+ }
30
+ function toConnectorAccount(account) {
31
+ const now = Date.now();
32
+ return {
33
+ id: normalizeAccountId(account.accountId),
34
+ provider: LINE_PROVIDER_ID,
35
+ label: account.name ?? account.accountId,
36
+ role: roleForAccount(account),
37
+ purpose: purposeForAccount(account),
38
+ accessGate: accessGateForAccount(account),
39
+ status: account.enabled && account.configured ? "connected" : "disabled",
40
+ createdAt: now,
41
+ updatedAt: now,
42
+ metadata: {
43
+ tokenSource: account.tokenSource,
44
+ dmPolicy: account.config?.dmPolicy ?? "open",
45
+ groupPolicy: account.config?.groupPolicy ?? "allowlist",
46
+ },
47
+ };
48
+ }
49
+ export function createLineConnectorAccountProvider(runtime) {
50
+ return {
51
+ provider: LINE_PROVIDER_ID,
52
+ label: "LINE",
53
+ listAccounts: async (_manager) => {
54
+ const enabled = listEnabledLineAccounts(runtime);
55
+ if (enabled.length > 0) {
56
+ return enabled.map(toConnectorAccount);
57
+ }
58
+ // Fall back to default account so single-account env-only deployments
59
+ // still surface in the manager. Status reflects token configuration.
60
+ const fallback = resolveLineAccount(runtime, DEFAULT_ACCOUNT_ID);
61
+ return [toConnectorAccount(fallback)];
62
+ },
63
+ createAccount: async (input, _manager) => {
64
+ return {
65
+ ...input,
66
+ provider: LINE_PROVIDER_ID,
67
+ role: input.role ?? "AGENT",
68
+ purpose: input.purpose ?? ["messaging"],
69
+ accessGate: input.accessGate ?? "open",
70
+ status: input.status ?? "pending",
71
+ };
72
+ },
73
+ patchAccount: async (_accountId, patch, _manager) => {
74
+ return { ...patch, provider: LINE_PROVIDER_ID };
75
+ },
76
+ deleteAccount: async (_accountId, _manager) => {
77
+ // No-op at provider layer — runtime credentials live in character
78
+ // settings; deletion of those is out of band.
79
+ },
80
+ };
81
+ }
82
+ //# sourceMappingURL=connector-account-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector-account-provider.js","sourceRoot":"","sources":["../src/connector-account-provider.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,15 +5,11 @@
5
5
  * supporting text, flex messages, locations, and more.
6
6
  */
7
7
  import type { Plugin } from "@elizaos/core";
8
- import { sendFlexMessage, sendLocation, sendMessage } from "./actions/index.js";
9
- import { chatContextProvider, userContextProvider } from "./providers/index.js";
10
8
  import { LineService } from "./service.js";
11
- export * from "./types.js";
12
- export { LineService };
13
- export { sendMessage, sendFlexMessage, sendLocation };
14
- export { chatContextProvider, userContextProvider };
15
9
  export { DEFAULT_ACCOUNT_ID, isLineMentionRequired, isLineUserAllowed, isMultiAccountEnabled, type LineAccountConfig, type LineGroupConfig, type LineMultiAccountConfig, type LineTokenResolution, type LineTokenSource, listEnabledLineAccounts, listLineAccountIds, normalizeAccountId, type ResolvedLineAccount, resolveDefaultLineAccountId, resolveLineAccount, resolveLineGroupConfig, resolveLineSecret, resolveLineToken, } from "./accounts.js";
16
10
  export { buildLineDeepLink, type ChunkLineTextOpts, type CodeBlock, chunkLineText, extractCodeBlocks, extractLinks, extractMarkdownTables, formatCodeBlockAsText, formatLineUser, formatTableAsText, getChatId, getChatType, hasMarkdownContent, isGroupChat, LINE_MAX_REPLY_MESSAGES, LINE_TEXT_CHUNK_LIMIT, type MarkdownLink, type MarkdownTable, markdownToLineChunks, type ProcessedLineMessage, processLineMessage, resolveLineSystemLocation, stripMarkdown, truncateText, } from "./messaging.js";
11
+ export * from "./types.js";
12
+ export { LineService };
17
13
  /**
18
14
  * LINE plugin for ElizaOS agents.
19
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAiB,MAAM,EAAE,MAAM,eAAe,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,CAAC;AAGpD,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,2BAA2B,EAC3B,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,oBAAoB,EACpB,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACb,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB;;GAEG;AACH,QAAA,MAAM,UAAU,EAAE,MAqCjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAiB,MAAM,EAAE,MAAM,eAAe,CAAC;AAG3D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,2BAA2B,EAC3B,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,oBAAoB,EACpB,KAAK,oBAAoB,EACzB,kBAAkB,EAClB,yBAAyB,EACzB,aAAa,EACb,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;GAEG;AACH,QAAA,MAAM,UAAU,EAAE,MAqDjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -4,31 +4,42 @@
4
4
  * Provides LINE Messaging API integration for ElizaOS agents,
5
5
  * supporting text, flex messages, locations, and more.
6
6
  */
7
- import { logger } from "@elizaos/core";
8
- import { sendFlexMessage, sendLocation, sendMessage } from "./actions/index.js";
9
- import { chatContextProvider, userContextProvider } from "./providers/index.js";
7
+ import { getConnectorAccountManager, logger } from "@elizaos/core";
8
+ import { createLineConnectorAccountProvider } from "./connector-account-provider.js";
10
9
  import { LineService } from "./service.js";
11
- // Re-export types and service
12
- export * from "./types.js";
13
- export { LineService };
14
- export { sendMessage, sendFlexMessage, sendLocation };
15
- export { chatContextProvider, userContextProvider };
10
+ import { LineWorkflowCredentialProvider } from "./workflow-credential-provider.js";
16
11
  // Account management exports
17
12
  export { DEFAULT_ACCOUNT_ID, isLineMentionRequired, isLineUserAllowed, isMultiAccountEnabled, listEnabledLineAccounts, listLineAccountIds, normalizeAccountId, resolveDefaultLineAccountId, resolveLineAccount, resolveLineGroupConfig, resolveLineSecret, resolveLineToken, } from "./accounts.js";
18
13
  // Messaging utilities exports
19
14
  export { buildLineDeepLink, chunkLineText, extractCodeBlocks, extractLinks, extractMarkdownTables, formatCodeBlockAsText, formatLineUser, formatTableAsText, getChatId, getChatType, hasMarkdownContent, isGroupChat, LINE_MAX_REPLY_MESSAGES, LINE_TEXT_CHUNK_LIMIT, markdownToLineChunks, processLineMessage, resolveLineSystemLocation, stripMarkdown, truncateText, } from "./messaging.js";
15
+ // Re-export types and service
16
+ export * from "./types.js";
17
+ export { LineService };
20
18
  /**
21
19
  * LINE plugin for ElizaOS agents.
22
20
  */
23
21
  const linePlugin = {
24
22
  name: "line",
25
23
  description: "LINE Messaging API plugin for ElizaOS agents",
26
- services: [LineService],
27
- actions: [sendMessage, sendFlexMessage, sendLocation],
28
- providers: [chatContextProvider, userContextProvider],
24
+ services: [LineService, LineWorkflowCredentialProvider],
25
+ actions: [],
26
+ providers: [],
29
27
  tests: [],
30
- init: async (config, _runtime) => {
28
+ init: async (config, runtime) => {
31
29
  logger.info("Initializing LINE plugin...");
30
+ // Register the LINE provider with the ConnectorAccountManager so the HTTP
31
+ // CRUD surface (packages/agent/src/api/connector-account-routes.ts) can
32
+ // list, create, patch, and delete LINE accounts.
33
+ try {
34
+ const manager = getConnectorAccountManager(runtime);
35
+ manager.registerProvider(createLineConnectorAccountProvider(runtime));
36
+ }
37
+ catch (err) {
38
+ logger.warn({
39
+ src: "plugin:line",
40
+ err: err instanceof Error ? err.message : String(err),
41
+ }, "Failed to register LINE provider with ConnectorAccountManager");
42
+ }
32
43
  const hasAccessToken = Boolean(config.LINE_CHANNEL_ACCESS_TOKEN || process.env.LINE_CHANNEL_ACCESS_TOKEN);
33
44
  const hasSecret = Boolean(config.LINE_CHANNEL_SECRET || process.env.LINE_CHANNEL_SECRET);
34
45
  logger.info("LINE plugin configuration:");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * LINE plugin providers.
3
+ *
4
+ * Chat and user context are supplied by core PLATFORM_* providers through the
5
+ * registered LINE message connector hooks.
3
6
  */
4
- export { chatContextProvider } from "./chatContext.js";
5
- export { userContextProvider } from "./userContext.js";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -1,6 +1,8 @@
1
+ "use strict";
1
2
  /**
2
3
  * LINE plugin providers.
4
+ *
5
+ * Chat and user context are supplied by core PLATFORM_* providers through the
6
+ * registered LINE message connector hooks.
3
7
  */
4
- export { chatContextProvider } from "./chatContext.js";
5
- export { userContextProvider } from "./userContext.js";
6
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
package/dist/service.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * LINE service implementation for ElizaOS.
3
3
  */
4
- import type { IAgentRuntime } from "@elizaos/core";
4
+ import type { Content, IAgentRuntime } from "@elizaos/core";
5
5
  import { Service } from "@elizaos/core";
6
- import { type MiddlewareConfig, middleware, type WebhookEvent } from "@line/bot-sdk";
6
+ import { type MiddlewareConfig, middleware, type webhook } from "@line/bot-sdk";
7
+ type WebhookEvent = webhook.Event;
7
8
  import { type ILineService, type LineFlexMessage, type LineGroup, type LineLocationMessage, type LineMessageSendOptions, type LineSendResult, type LineSettings, type LineTemplateMessage, type LineUser } from "./types.js";
8
9
  /**
9
10
  * LINE messaging service for ElizaOS agents.
@@ -19,6 +20,7 @@ export declare class LineService extends Service implements ILineService {
19
20
  * Start the LINE service.
20
21
  */
21
22
  static start(runtime: IAgentRuntime): Promise<Service>;
23
+ static registerSendHandlers(runtime: IAgentRuntime, service: LineService): void;
22
24
  /**
23
25
  * Initialize the service.
24
26
  */
@@ -93,10 +95,16 @@ export declare class LineService extends Service implements ILineService {
93
95
  * Get current settings.
94
96
  */
95
97
  getSettings(): LineSettings | null;
98
+ sendDirectMessage(target: string, content: Content): Promise<void>;
99
+ sendRoomMessage(target: string, content: Content): Promise<void>;
100
+ private handleSendMessage;
101
+ private sendConnectorContent;
102
+ private listConnectorRooms;
96
103
  private loadSettings;
97
104
  private validateSettings;
98
105
  private pushMessages;
99
106
  private handleWebhookEvent;
100
107
  private handleMessageEvent;
101
108
  }
109
+ export {};
102
110
  //# sourceMappingURL=service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}