@zoulabo/line-hive 0.1.17 → 0.1.19

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/README.md CHANGED
@@ -13,7 +13,7 @@
13
13
  <a href="https://www.npmjs.com/package/@zoulabo/line-hive"><img src="https://img.shields.io/npm/v/@zoulabo/line-hive?color=cb3837&label=npm" alt="npm version"></a>
14
14
  <img src="https://img.shields.io/badge/node-%3E%3D18-brightgreen" alt="Node.js ≥18">
15
15
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
16
- <img src="https://img.shields.io/badge/tests-245%20passing-brightgreen" alt="245 tests passing">
16
+ <img src="https://img.shields.io/badge/tests-246%20passing-brightgreen" alt="246 tests passing">
17
17
  </p>
18
18
 
19
19
  <p align="center">
@@ -266,6 +266,7 @@ npx @zoulabo/line-hive init --editor cursor # switch editor type
266
266
  | `line_check_messages` | Fetch unclaimed inbound messages | No |
267
267
  | `line_list_agents` | List all active agents across editor windows | No |
268
268
  | `line_read_file` | Read content from a received file (PDF text, scanned PDF→image, image resize, text decode) | No |
269
+ | `line_render_markdown` | Convert Markdown to HTML (built-in, no library install needed) | No |
269
270
 
270
271
  ### Recommended Pattern
271
272
 
@@ -285,28 +286,28 @@ Send these to your LINE bot:
285
286
 
286
287
  | Command | Action |
287
288
  |---------|--------|
288
- | `status` / `s` / `?` | Show all agents with status |
289
- | A number (e.g. `2`) | Select that agent (always never forwarded to agents) |
289
+ | `?` / `s` | Show all agents with status |
290
+ | `q` | Show message queue with per-agent counts |
290
291
  | Any other text | Route to targeted/waiting agent |
291
- | ▶️ Continue (button) | Send a reply token to keep the conversation going |
292
+ | Continue (button) | Send a reply token to keep the conversation going |
292
293
  | 📊 Status (button) | Same as `?` |
294
+ | 📬 Queue (button) | Same as `q` |
295
+ | 🗑️ Delete (button) | Delete a queued message (shown when queue has messages) |
293
296
  | 📬 N more (button) | Pop all queued messages to the agent at once |
297
+ | 1️⃣ 2️⃣ ... (buttons) | Switch between agents (shown when 2+ agents active) |
294
298
 
295
299
  ## Language Support
296
300
 
297
- Auto-detected from the user's LINE profile. Currently **English** (default) and **Japanese**. All bot messages, buttons, and errors are localized. Agents can override via `line_set_status({ language: "ja" })`.
301
+ Auto-detected from the user's LINE profile. Currently **English** (default) and **Japanese**. All bot messages, buttons, and errors are localized. Agents can override via `line_set_status({ language: "ja" })`. New users see a welcome message with available triggers, buttons, and a language hint.
298
302
 
299
303
  ## Limitations
300
304
 
301
- - **Push quota** — free tier: 200/month. Status queries via `?` are free (replyToken). The server pools tokens aggressively.
302
- - **Reply token expiry** — ~15 min (empirically tested). Falls back to push when exhausted.
303
- - **Files** — receive images & files (stored as base64 in SQLite). Send images/files via `imageBase64`, `imageFilePath`, or `filePath`.
304
- - **Read content** on demand with `line_read_file` — text PDF extraction, scanned PDF→image rendering (poppler), image resize (sharp).
305
- - **Security** — PDF JavaScript execution disabled; `outputPath` scoped to workspace.
306
- - Stickers, video, and audio are currently ignored.
305
+ - **Push quota** — free tier: 200/month. Status queries via `?` use reply tokens (free). Send `?` periodically to replenish the token pool.
306
+ - **Reply token expiry** — ~15 min. Falls back to push when exhausted.
307
+ - **Files** — receive images & files (stored as base64 in SQLite). Send via `imageBase64`, `imageFilePath`, or `filePath`. Stickers, video, and audio are currently ignored.
307
308
  - **Single user** — designed for one developer per LINE channel.
308
309
  - **Single webhook URL** — all agent instances share one tunnel endpoint.
309
- - **Multi-workspace** — only the first editor window claims the webhook port/tunnel. Others piggyback via shared SQLite.
310
+ - **Multi-workspace** — only the first editor claims the webhook port/tunnel. Others piggyback via shared SQLite.
310
311
  - **Claude Code** — `line_ask` can block up to 2 hours; ensure `MCP_TOOL_TIMEOUT` is not too short. Always use `--editor claude-code` for init.
311
312
 
312
313
  ## Development
@@ -345,45 +346,11 @@ For standalone `npm start`:
345
346
  | `WEBHOOK_PORT` | No | `19780` |
346
347
  | `SQLITE_PATH` | No | `~/.line-hive/line-hive.db` |
347
348
 
348
- ### Project Structure
349
-
350
- ```
351
- src/
352
- ├── index.ts # Entry point
353
- ├── server.ts # MCP server + tool handlers
354
- ├── config.ts # Environment config
355
- ├── logger.ts # Pino (stderr only — stdout is MCP)
356
- ├── tunnel.ts # ngrok tunnel management
357
- ├── cli/
358
- │ ├── init.ts # Setup wizard
359
- │ ├── update.ts # Refresh instruction templates
360
- │ ├── test-connection.ts # LINE API connection test
361
- │ └── config-writer.ts # Generates mcp.json + instructions
362
- ├── tools/ # MCP tool implementations
363
- │ ├── ask.ts # line_ask — send + wait for reply
364
- │ ├── setStatus.ts # line_set_status
365
- │ ├── readFile.ts # line_read_file — PDF/image/text extraction
366
- │ ├── sendMessage.ts # line_send_message
367
- │ ├── checkMessages.ts # line_check_messages
368
- │ └── listAgents.ts # line_list_agents
369
- ├── line/
370
- │ ├── client.ts # LINE API client
371
- │ ├── messages.ts # Message builders, quick reply, postback
372
- │ └── webhook.ts # Webhook handler + status responder
373
- ├── store/
374
- │ ├── messageStore.ts # Message persistence (SQLite)
375
- │ └── statusStore.ts # Agent status management
376
- ├── util/
377
- │ └── sendWithTokenPool.ts # Reply token pool → push fallback
378
- └── types/
379
- └── index.ts
380
- ```
381
-
382
349
  ## Contributing
383
350
 
384
351
  Designed for **AI-agent-driven development**. The repo includes skill files (`.github/skills/`) that teach agents the codebase. Point your agent at the repo and let it work.
385
352
 
386
- - `npm test` must pass (~245 tests, <1s)
353
+ - `npm test` must pass (~246 tests, <1s)
387
354
  - `npx tsc --noEmit` must be clean
388
355
  - Let the agents read skills first, then write the code
389
356
 
@@ -419,14 +386,6 @@ Use `--editor claude-code` whether you're running Claude Code as:
419
386
  Don't use `--editor vscode` — that's for GitHub Copilot.
420
387
  </details>
421
388
 
422
- <details>
423
- <summary><b>Reply tokens expire / push message quota exceeded</b></summary>
424
-
425
- - Reply tokens expire after ~15 minutes. The server pools them aggressively but falls back to push messages when none are available.
426
- - Free tier: 200 push messages/month. Status queries via `?` are free (use reply tokens).
427
- - Tip: Send `?` in LINE periodically to replenish the token pool.
428
- </details>
429
-
430
389
  <details>
431
390
  <summary><b>ngrok tunnel not starting</b></summary>
432
391
 
@@ -442,7 +401,7 @@ Don't use `--editor vscode` — that's for GitHub Copilot.
442
401
  - **Heartbeat** every 10s — dead agents auto-cleaned after 2 min
443
402
  - **Reply token pooling** — webhook saves tokens for free replies (saves push quota)
444
403
  - **Session correlation** — `line_ask` creates a session, webhook fulfills it on reply
445
- - **Multi-agent routing** — user selects agent by number, or auto-routes to `needs_input` agent
404
+ - **Multi-agent routing** — user selects agent via quick reply buttons, or auto-routes to `needs_input` agent
446
405
  - **Embedded tunnel** — ngrok auto-managed as child process (optional; any tunnel to localhost:19780 works)
447
406
  - **Cross-platform** — works on macOS, Linux, and Windows
448
407
 
package/dist/config.js CHANGED
@@ -50,7 +50,7 @@ export function loadConfig() {
50
50
  webhookPort: numberEnv("WEBHOOK_PORT", 19780),
51
51
  webhookPath: process.env.WEBHOOK_PATH || "/webhook",
52
52
  sqlitePath,
53
- sessionTtlMs: numberEnv("SESSION_TTL_MS", 7200000),
53
+ sessionTtlMs: numberEnv("SESSION_TTL_MS", 86400000),
54
54
  cleanupIntervalMs: numberEnv("CLEANUP_INTERVAL_MS", 60000),
55
55
  agentId: generateAgentId(workspacePath),
56
56
  agentName: process.env.AGENT_NAME || deriveAgentName(workspacePath),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,SAAS,SAAS,CAAC,IAAY,EAAE,QAAgB;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe;IACtB,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,gDAAgD;IAChD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAElE,OAAO;QACL,sBAAsB,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE;QACnE,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;QACxD,WAAW,EAAE,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC;QAC7C,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU;QACnD,UAAU;QACV,YAAY,EAAE,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC;QAClD,iBAAiB,EAAE,SAAS,CAAC,qBAAqB,EAAE,KAAK,CAAC;QAC1D,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC;QACvC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,eAAe,CAAC,aAAa,CAAC;QACnE,mBAAmB,EAAE,SAAS,CAAC,uBAAuB,EAAE,KAAK,CAAC;QAC9D,kBAAkB,EAAE,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;QAC7D,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,SAAS;KAC3D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,SAAS,SAAS,CAAC,IAAY,EAAE,QAAgB;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe;IACtB,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,gDAAgD;IAChD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAElE,OAAO;QACL,sBAAsB,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE;QACnE,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;QACxD,WAAW,EAAE,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC;QAC7C,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU;QACnD,UAAU;QACV,YAAY,EAAE,SAAS,CAAC,gBAAgB,EAAE,QAAQ,CAAC;QACnD,iBAAiB,EAAE,SAAS,CAAC,qBAAqB,EAAE,KAAK,CAAC;QAC1D,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC;QACvC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,eAAe,CAAC,aAAa,CAAC;QACnE,mBAAmB,EAAE,SAAS,CAAC,uBAAuB,EAAE,KAAK,CAAC;QAC9D,kBAAkB,EAAE,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;QAC7D,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,SAAS;KAC3D,CAAC;AACJ,CAAC"}
package/dist/i18n.js CHANGED
@@ -29,10 +29,15 @@ const en = {
29
29
  queuedHeader: () => "📬 Queued messages:",
30
30
  ackQueued: (agent, info) => `📨 Queued for ${agent}${info}`,
31
31
  nQueued: (n) => ` (${n} queued)`,
32
+ // Delete queue
33
+ deleteWhich: () => "🗑️ Which message to delete?",
34
+ deleteSuccess: () => "✅ Message deleted.",
35
+ deleteNotFound: () => "⚠️ Message not found (already consumed or deleted).",
36
+ btnDelete: () => "🗑️",
32
37
  // Quick reply button labels
33
- btnContinue: () => "▶️ Continue",
34
- btnStatus: () => "📊 Status",
35
- btnQueued: () => "📬 Queued",
38
+ btnContinue: () => "",
39
+ btnStatus: () => "📊",
40
+ btnQueued: () => "📬",
36
41
  btnOk: () => "✅ OK",
37
42
  btnCancel: () => "❌ Cancel",
38
43
  btnYes: () => "👍 Yes",
@@ -50,8 +55,9 @@ const en = {
50
55
  hoursAgo: (h) => `${h}h ago`,
51
56
  daysAgo: (d) => `${d}d ago`,
52
57
  // Misc
53
- tapToConnect: () => "\n\n⚡ Tap below to stay connected 👇",
54
- waitingForReply: (duration) => `— Waiting for your reply (${duration} timeout)`,
58
+ tapToConnect: () => "",
59
+ onboarding: () => `📱 LINE Hive\n\n── 💬 Triggers ──\n? → check status\nq → message queue\n\n── 🔘 Buttons ──\n✅ → send reply token\n📊 → check status\n📬 → message queue\n🗑️ → delete queued message\n1️⃣2️⃣… → switch agent\n\n── 💡 Tips ──\nTap ✅ regularly to keep reply tokens stocked.\n🌐 Language auto-detected from your LINE profile. Ask the agent to change it.`,
60
+ waitingForReply: (duration) => `— Waiting for your reply (${duration})`,
55
61
  };
56
62
  const ja = {
57
63
  idle: (age) => `待機中 (${age})`,
@@ -70,9 +76,13 @@ const ja = {
70
76
  queuedHeader: () => "📬 キューされたメッセージ:",
71
77
  ackQueued: (agent, info) => `📨 ${agent}にキュー${info}`,
72
78
  nQueued: (n) => ` (${n}件キュー)`,
73
- btnContinue: () => "▶️ 続ける",
74
- btnStatus: () => "📊 状態",
75
- btnQueued: () => "📬 キュー",
79
+ deleteWhich: () => "🗑️ どのメッセージを削除しますか?",
80
+ deleteSuccess: () => " メッセージを削除しました。",
81
+ deleteNotFound: () => "⚠️ メッセージが見つかりません(消費済みまたは削除済み)。",
82
+ btnDelete: () => "🗑️",
83
+ btnContinue: () => "✅",
84
+ btnStatus: () => "📊",
85
+ btnQueued: () => "📬",
76
86
  btnOk: () => "✅ OK",
77
87
  btnCancel: () => "❌ キャンセル",
78
88
  btnYes: () => "👍 はい",
@@ -86,8 +96,9 @@ const ja = {
86
96
  minutesAgo: (m) => `${m}分前`,
87
97
  hoursAgo: (h) => `${h}時間前`,
88
98
  daysAgo: (d) => `${d}日前`,
89
- tapToConnect: () => "\n\n⚡ 下をタップして接続を維持 👇",
90
- waitingForReply: (duration) => `— 返信を待っています (${duration}タイムアウト)`,
99
+ tapToConnect: () => "",
100
+ onboarding: () => `📱 LINE Hive\n\n── 💬 トリガー ──\n? → ステータス確認\nq → メッセージキュー\n\n── 🔘 ボタン ──\n✅ → リプライトークン送信\n📊 → ステータス確認\n📬 → メッセージキュー\n🗑️ → キューメッセージ削除\n1️⃣2️⃣… → エージェント切替\n\n── 💡 ヒント ──\n✅を定期的にタップしてトークンを補充しましょう。\n🌐 言語はLINEプロフィールから自動検出。エージェントに変更を依頼できます。`,
101
+ waitingForReply: (duration) => `— 返信を待っています (${duration})`,
91
102
  };
92
103
  const catalogs = { en, ja };
93
104
  /** Get the message catalog for a locale */
package/dist/i18n.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -93,13 +93,23 @@ async function main() {
93
93
  messageStore,
94
94
  statusStore,
95
95
  lineClient,
96
- logger
96
+ logger,
97
+ getUpdatedInstructions: () => {
98
+ if (instructionsUpdated && updatedInstructionsContent) {
99
+ instructionsUpdated = false; // Only return once
100
+ return updatedInstructionsContent;
101
+ }
102
+ return null;
103
+ }
97
104
  });
98
105
  const transport = new StdioServerTransport();
99
106
  await server.connect(transport);
100
107
  // Auto-update project instructions in background (non-blocking).
101
108
  // Silently refreshes instruction files if they're outdated after a package upgrade.
109
+ // Sets instructionsUpdated flag so the first tool call can return the new instructions.
102
110
  const projectDir = process.env.WORKSPACE_PATH || process.cwd();
111
+ let instructionsUpdated = false;
112
+ let updatedInstructionsContent = null;
103
113
  (async () => {
104
114
  try {
105
115
  const isClaudeCode = fs.existsSync(path.join(projectDir, ".claude", "rules", "line-notification.md"));
@@ -108,6 +118,13 @@ async function main() {
108
118
  : await installProjectInstructions(projectDir);
109
119
  if (updated) {
110
120
  logger.info({ path: updated }, "Auto-updated project instructions");
121
+ instructionsUpdated = true;
122
+ try {
123
+ updatedInstructionsContent = fs.readFileSync(updated, "utf-8");
124
+ }
125
+ catch {
126
+ // Non-critical — flag is still set
127
+ }
111
128
  }
112
129
  await ensureGitignoreEntries(projectDir);
113
130
  }
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":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE3H,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AAEtE,oDAAoD;AACpD,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE;aAC9B,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aACnC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YACtB,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC;aACD,MAAM,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAE/C,+BAA+B;IAC/B,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,oIAAoI,CAAC,CAAC;IACpJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,yGAAyG,CAAC,CAAC;IACzH,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,sBAAsB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,gIAAgI,CAAC,CAAC;IAChJ,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE3C,kEAAkE;IAClE,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAEhC,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAE5C,MAAM,CAAC,IAAI,CACT,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,EACxD,kBAAkB,CACnB,CAAC;IAEF,8DAA8D;IAC9D,IAAI,aAAa,GAAiD,IAAI,CAAC;IACvE,IAAI,YAAY,GAA0C,IAAI,CAAC;IAC/D,IAAI,WAAW,GAAG,KAAK,CAAC;IAExB,yDAAyD;IACzD,SAAS,eAAe;QACtB,IAAI,WAAW;YAAE,OAAO,CAAC,kBAAkB;QAE3C,IAAI,CAAC;YACH,aAAa,GAAG,kBAAkB,CAAC;gBACjC,MAAM;gBACN,YAAY;gBACZ,WAAW;gBACX,UAAU;gBACV,MAAM;aACP,CAAC,CAAC;YAEH,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;gBACjC,WAAW,GAAG,IAAI,CAAC;gBACnB,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,EAC5B,wCAAwC,CACzC,CAAC;gBACF,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvB,YAAY,GAAG,WAAW,CAAC;wBACzB,MAAM,EAAE,MAAM,CAAC,WAAW;wBAC1B,IAAI,EAAE,MAAM,CAAC,WAAW;wBACxB,MAAM;qBACP,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,EAC5B,uFAAuF,CACxF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,iEAAiE;YACjE,wEAAwE;YACxE,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC7B,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,eAAe,EAAE,CAAC;IAElB,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,MAAM;QACN,YAAY;QACZ,WAAW;QACX,UAAU;QACV,MAAM;QACN,sBAAsB,EAAE,GAAG,EAAE;YAC3B,IAAI,mBAAmB,IAAI,0BAA0B,EAAE,CAAC;gBACtD,mBAAmB,GAAG,KAAK,CAAC,CAAC,mBAAmB;gBAChD,OAAO,0BAA0B,CAAC;YACpC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,iEAAiE;IACjE,oFAAoF;IACpF,wFAAwF;IACxF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/D,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAChC,IAAI,0BAA0B,GAAkB,IAAI,CAAC;IACrD,CAAC,KAAK,IAAI,EAAE;QACV,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC;YACtG,MAAM,OAAO,GAAG,YAAY;gBAC1B,CAAC,CAAC,MAAM,6BAA6B,CAAC,UAAU,CAAC;gBACjD,CAAC,CAAC,MAAM,0BAA0B,CAAC,UAAU,CAAC,CAAC;YACjD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBACpE,mBAAmB,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC;oBACH,0BAA0B,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACjE,CAAC;gBAAC,MAAM,CAAC;oBACP,mCAAmC;gBACrC,CAAC;YACH,CAAC;YACD,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,2DAA2D;YAC3D,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,oCAAoC,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,uEAAuE;IACvE,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC5C,WAAW,CAAC,SAAS,EAAE,CAAC;QACxB,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAExD,qEAAqE;QACrE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC5D,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,EAAE,kDAAkD,CAAC,CAAC;gBAC9F,eAAe,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,YAAY,CAAC,OAAO,EAAE,CAAC;QACvB,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACxC,YAAY,CAAC,wBAAwB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACnE,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAE7B,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,IAAI,YAAY;YAAE,OAAO;QACzB,YAAY,GAAG,IAAI,CAAC;QACpB,aAAa,CAAC,cAAc,CAAC,CAAC;QAC9B,aAAa,CAAC,YAAY,CAAC,CAAC;QAC5B,WAAW,CAAC,UAAU,EAAE,CAAC;QACzB,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QACD,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAEhC,iFAAiF;IACjF,sFAAsF;IACtF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,QAAQ,EAAE,CAAC;IACb,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAC7B,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,QAAQ,EAAE,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;IAC7G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -63,6 +63,13 @@ export function parsePostbackData(data) {
63
63
  return { type: "continue" };
64
64
  if (action === "show_queued")
65
65
  return { type: "show_queued" };
66
+ if (action === "delete_queue")
67
+ return { type: "delete_queue" };
68
+ if (action === "delete_queue_item") {
69
+ const msgId = parseInt(params.get("messageId") || "0", 10);
70
+ if (msgId > 0)
71
+ return { type: "delete_queue_item", messageId: msgId };
72
+ }
66
73
  return { type: "chat", text: data };
67
74
  }
68
75
  // ─── Quick Reply Builder ────────────────────────────────────────────────────
@@ -81,7 +88,7 @@ export function buildQuickReply(agents, locale = "en") {
81
88
  type: "postback",
82
89
  label: m.btnContinue(),
83
90
  data: "action=continue",
84
- displayText: "▶️",
91
+ displayText: "",
85
92
  },
86
93
  });
87
94
  // Status button
@@ -94,28 +101,76 @@ export function buildQuickReply(agents, locale = "en") {
94
101
  displayText: "?",
95
102
  },
96
103
  });
97
- // Agent selection buttons (max 9 to stay under LINE's 13-item limit)
98
- const maxAgents = Math.min(agents.length, 9);
99
- for (let i = 0; i < maxAgents; i++) {
100
- const agent = agents[i];
101
- const name = agent.agentName || agent.agentId.slice(0, 8);
104
+ // Queue button
105
+ items.push({
106
+ type: "action",
107
+ action: {
108
+ type: "postback",
109
+ label: m.btnQueued(),
110
+ data: "action=show_queued",
111
+ displayText: "q",
112
+ },
113
+ });
114
+ // Agent selection buttons (only when 2+ agents; max 9 to stay under LINE's 13-item limit)
115
+ if (agents.length >= 2) {
116
+ const maxAgents = Math.min(agents.length, 9);
117
+ for (let i = 0; i < maxAgents; i++) {
118
+ const agent = agents[i];
119
+ const name = agent.agentName || agent.agentId.slice(0, 8);
120
+ const emoji = NUMBER_EMOJIS[i] || `${i + 1}`;
121
+ const icon = agent.isAlive === false
122
+ ? "🔌"
123
+ : STATUS_ICONS[agent.status] || "❔";
124
+ // Build display name: "workspace/agentName" if workspace differs
125
+ const showWorkspace = agent.workspaceName && agent.workspaceName !== name;
126
+ const displayName = showWorkspace ? `${agent.workspaceName}/${name}` : name;
127
+ items.push({
128
+ type: "action",
129
+ action: {
130
+ type: "postback",
131
+ label: truncLabel(`${emoji}${icon} ${name}`),
132
+ data: new URLSearchParams({ action: "confirm_select", index: String(i + 1), agentId: agent.agentId }).toString(),
133
+ displayText: `${i + 1} ${displayName}`,
134
+ },
135
+ });
136
+ }
137
+ }
138
+ return { items };
139
+ }
140
+ // ─── Text + Quick Reply Helpers ─────────────────────────────────────────────
141
+ /**
142
+ * Build quick reply for "which message to delete?" prompt.
143
+ * Shows Continue button + numbered emoji buttons (1️⃣, 2️⃣, ...) for each queued message.
144
+ */
145
+ export function buildDeleteQueueReply(messages, locale = "en") {
146
+ const m = t(locale);
147
+ const items = [];
148
+ // Continue button (escape hatch)
149
+ items.push({
150
+ type: "action",
151
+ action: {
152
+ type: "postback",
153
+ label: m.btnContinue(),
154
+ data: "action=continue",
155
+ displayText: "✅",
156
+ },
157
+ });
158
+ // Numbered message buttons (max 9 to stay within LINE's 13-item limit)
159
+ const max = Math.min(messages.length, 9);
160
+ for (let i = 0; i < max; i++) {
102
161
  const emoji = NUMBER_EMOJIS[i] || `${i + 1}`;
103
- const icon = agent.isAlive === false
104
- ? "🔌"
105
- : STATUS_ICONS[agent.status] || "❔";
106
162
  items.push({
107
163
  type: "action",
108
164
  action: {
109
165
  type: "postback",
110
- label: truncLabel(`${emoji}${icon} ${name}`),
111
- data: `action=select&index=${i + 1}`,
112
- displayText: `${i + 1}`,
166
+ label: emoji,
167
+ data: new URLSearchParams({ action: "delete_queue_item", messageId: String(messages[i].id) }).toString(),
168
+ displayText: emoji,
113
169
  },
114
170
  });
115
171
  }
116
172
  return { items };
117
173
  }
118
- // ─── Text + Quick Reply Helpers ─────────────────────────────────────────────
119
174
  /**
120
175
  * Build minimal quick reply items when no agents are active.
121
176
  * Provides Continue (token priming), Status (refresh), and Queued (orphan check).
@@ -130,7 +185,7 @@ function buildZeroAgentQuickReply(locale = "en") {
130
185
  type: "postback",
131
186
  label: m.btnContinue(),
132
187
  data: "action=continue",
133
- displayText: "▶️",
188
+ displayText: "",
134
189
  },
135
190
  },
136
191
  {
@@ -148,7 +203,7 @@ function buildZeroAgentQuickReply(locale = "en") {
148
203
  type: "postback",
149
204
  label: m.btnQueued(),
150
205
  data: "action=show_queued",
151
- displayText: "📬",
206
+ displayText: "q",
152
207
  },
153
208
  },
154
209
  ],
@@ -162,6 +217,27 @@ export function textWithQuickReply(text, agents, locale = "en") {
162
217
  quickReply: agents.length > 0 ? buildQuickReply(agents, locale) : buildZeroAgentQuickReply(locale),
163
218
  };
164
219
  }
220
+ /** Text message with quick reply buttons + a 🗑️ delete button (for queue display with messages) */
221
+ export function textWithQueueQuickReply(text, agents, locale = "en") {
222
+ const m = t(locale);
223
+ const qr = agents.length > 0 ? buildQuickReply(agents, locale) : buildZeroAgentQuickReply(locale);
224
+ // Insert 🗑️ delete button after the 📬 queue button (index 2) — before any agent buttons
225
+ const deleteItem = {
226
+ type: "action",
227
+ action: {
228
+ type: "postback",
229
+ label: m.btnDelete(),
230
+ data: "action=delete_queue",
231
+ displayText: "🗑️",
232
+ },
233
+ };
234
+ qr.items.splice(3, 0, deleteItem);
235
+ return {
236
+ type: "text",
237
+ text,
238
+ quickReply: qr,
239
+ };
240
+ }
165
241
  /** Error message (e.g., invalid agent number) with quick replies */
166
242
  export function errorMessage(text, agents, locale = "en") {
167
243
  return textWithQuickReply(text, agents, locale);
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/line/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/line/messages.ts"],"names":[],"mappings":"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"}